nidula 0.2.1 copy "nidula: ^0.2.1" to clipboard
nidula: ^0.2.1 copied to clipboard

A lightweight Dart library for Rust-like Option/Result types. Supports exhaustive pattern matching and compile-time safe, chainable None/Err propagation.

0.2.1 #

  • Explain how to achieve functionality similar to Rust's From trait for error conversion before propagation.
  • Updated documentation.

0.2.0 #

  • Renamed try operator components.
    • unwrapOrPropagateErr and unwrapOrPropagateNone were renamed to try_.
    • syncErrPropagationScope/asyncErrPropagationScope and syncNonePropagationScope/asyncNonePropagationScope were renamed to syncTryScope/asyncTryScope.
    • Token variable names default to nt and et (previously t for both cases).
  • Renamed from to fromNullable, added toNullable.
  • Updated documentation.

0.1.3 #

  • Improved documentation.

0.1.2 #

  • Improved documentation.
  • Improved docstring.
  • Included e in unwrap's Panic message.
  • Updated toString method of NonePropagation and ErrPropagation.

0.1.1 #

  • Improved documentation.
    • Added "Parallel to Rust's try-operator implementation" subsections.
    • Added "Nested options and comparison to nullable types" subsection.
    • Fixed typos.

0.1.0 #

  • Renamed most classes and methods and static methods. Names are longer, but much more obvious:
    • prop was renamed to unwrapOrPropagateErr and unwrapOrPropagateNone.
    • catchProp/catchPropAsync were renamed to syncErrPropagationScope/asyncErrPropagationScope and syncNonePropagationScope/asyncNonePropagationScope.
    • ResultPropError was renamed to ErrPropagation. Same for OptionPropError, which was renamed to NonePropagation.
    • ResultPropToken was renamed to ErrPropagationToken. Same for OptionPropToken, which was renamed to NonePropagationToken.
  • Added Propagation abstract class.
  • Improved and refactored tests.
  • Improved docstring.
  • Improved README.

0.0.3 #

  • Added try-catch warning to README.
  • Added more code to nidula_example.dart.
  • Small fix to example in README.

0.0.2 #

  • Uploaded again to fix repository URL detection.

0.0.1 #

  • Initial version.
    • Forked from option_result, bringing the following enhancements:
      • Try-operator implementation rewritten from scratch.
        • Compile time safety through propagation tokens.
        • Chainable.
        • Simpler and clearer library-internal error handling strategy.
      • T and E types must extend Object (thus, non-null values are prohibited).
        • This enforces composition with Option types (Option<T>) instead of nullable types (T?).
      • Only T v and E e fields (and, thus, getters) are available.
        • value, val, err and error aliases were removed.
      • There is only a single public library to import components from.
      • Final modifiers to prevent extending Ok, Err, Some and None.
      • == operator takes all generic types into consideration when comparing Option objects and Result objects.
      • Added variable names to all function parameters in types
        • Callback autocomplete outputs e.g. (v) {} instead of (p0) {}
6
likes
0
pub points
17%
popularity

Publisher

verified publishermanuelplavsic.ch

A lightweight Dart library for Rust-like Option/Result types. Supports exhaustive pattern matching and compile-time safe, chainable None/Err propagation.

Repository (GitLab)
View/report issues

Topics

#option #result #pattern-matching #rust-try-operator

License

unknown (license)

More

Packages that depend on nidula