lens_base 0.1.0 copy "lens_base: ^0.1.0" to clipboard
lens_base: ^0.1.0 copied to clipboard

Functional lenses for Dart. Get and set values, even in nested structures.

Functional lenses for Dart #

Usage #

Basic methods #

LensBase<int> lens;

void main() {
  // Get the value:
  lens.get(); // 42

  // Set the value:
  lens.set(100);
  lens.get(); // 100
}

Specialized methods #

NumberLens<int> numberLens;
BoolLens boolLens;
EnumLens<MyEnum> enumLens;
ListLent<int> listLens;

void main() {
  // Numbers:
  numberLens.get(); // 42
  numberLens.increment();
  numberLens.get(); // 43
  
  // Booleans:
  boolLens.get(); // true
  boolLens.toggle();
  boolLens.get(); // false

  // Enums:
  enumLens.get(); // MyEnum.value1
  enumLens.next();
  enumLens.get(); // MyEnum.value2
  
  // Lists:
  listLens.get(); // [1, 2, 3]
  listLens.add(4);
  listLens.get(); // [1, 2, 3, 4]
  listLens.at(1).set(100);
  listLens.get(); // [1, 100, 3, 4]
}

LeanCode

Built with ☕️ by LeanCode

3
likes
150
pub points
24%
popularity

Publisher

verified publisherleancode.co

Functional lenses for Dart. Get and set values, even in nested structures.

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

License

Apache-2.0 (LICENSE)

More

Packages that depend on lens_base