Last updated:
0 purchases
register
Package for consistently representing identifiers, usually in a code generation setting.
Purpose •
Getting Started •
Credits
Purpose #
The purpose of the library is to have a standard way of generating an object, an Id, that can be used in any of a variety of casing contexts.
Getting Started #
For example, suppose you are writing a code generator that has a need for a single id with multiple representations. The following representations are covered:
snake case: words are all lower case with underscores (how_now_brown_cow)
emacs: words are all lower with hyphens (how-now-brown-cow)
shout: words are all upper case with underscores (HOW_NOW_BROWN_COW)
camel: words are joined with each word capitalized excluding the first (howNowBrownCow)
capCamel: words are joined with all words capitalized (HowNowBrownCow)
title: All words capitalized and joined with spaces (How Now Brown Cow)
squish: Lower case with no hypens or underscores (hownowbrowncow)
abbrev: The abbreviation in lower case (hnbc)
The default constructor requires the identifier to be snake case:
final id = Register('how_now_brown_cow');
print(id); // => howNowBrownCow
print(id.snake); // => how_now_brown_cow
print(id.emacs); // => how-now-brown-cow
print(id.shout); // => HOW_NOW_BROWN_COW
print(id.camel); // => howNowBrownCow
print(id.capCamel); // => HowNowBrownCow
print(id.title); // => How Now Brown Cow
print(id.squish); // => hownowbrowncow
print(id.abbrev); // => hnbc
copied to clipboard
An library function accepts either snake or any camel and returns a new Id:
var id = idFromString('testName');
copied to clipboard
And... api reference available here
Credits #
This software is cloning package incompatible with Dart 2:
id
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.