Skip to main content

annotations 0.1.0-alpha.1 copy "annotations: ^0.1.0-alpha.1" to clipboard
annotations: ^0.1.0-alpha.1 copied to clipboard

outdatedDart 1 only

Metadata annotations to allow for simple unobstrutive valiation

#Annotations

This library aims to provide some non-obstructive validation to Dart properties.

Note: You are free to have invalid data in an object, this library does not give you warnings. You find out if there are errors when you call the objects .isValid() method only.

#Usage

Currently the library is not in a production ready state. Help would be greatly appreciated.

The only two annotations available right now are

@required(message:"Value is required") ensures the property is not null or "" or an empty list or map.

@range(min:10, max:20, message:"Value must be between 10 and 20") ensures that the property's .length value or num value is between the specified range.

import 'package:annotations/annotation.dart';

class Person extends Object with Validatable {

  @required(message:"Please provide a name.")
  String name;

  @required()
  @range(min:13, max:99)
  int age;

  Person(this.name, this.age);

}

You can use required and range annotations without using the Validatable mixin. However they will prove useless unless you implement your own way of checking for errors using the provided annotations.

Validatable basically adds methods to a class that allows it to check if the defined Annotations are valid.

0
likes
0
points
34
downloads

Publisher

unverified uploader

Weekly Downloads

Metadata annotations to allow for simple unobstrutive valiation

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

unittest

More

Packages that depend on annotations