lombok 0.0.5

Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java. Never write another getter or equals method again, with one annotation your class has a fully featured builder, Automate your logging variables, and much more.

Lombok (Dart Version)

Reference

lombok (Java)

Feature

  • @data / @Data()

    • full configuration
    • toString
    • @EqualAndHashCode
  • @getter / @Getter()

    • full configuration
    • support use on field
  • @setter / @Getter()

    • full configuration
    • support use on field
  • @equalsAndHashCode / @EqualsAndHashCode()

    • full configuration
  • @toString / @ToString()

    • full configuration
  • Other

    • @NonNull
    • @Cleanup
    • @NoArgsConstructor, @RequiredArgsConstructor, @AllArgsConstructor
    • @Value
    • @Builder
    • @SneakyThrows
    • @Synchronized
    • @Log
    • experimental
    • etc.

Usage

A simple usage example:

// file: some_class.dart

part 'some_class.g.dart';

@data
class SomeClass with _$SomeClassLombok {
  int counter = 1;
}

// Equal to
class SomeClass {
  int counter = 1;
  
  int getCounter() {
    return counter;
  }
  
  void setCounter(int counter) {
    this.counter = counter;
  }
}