Forums | Admin

Discussion Forums: open-discussion

Start New Thread Start New Thread

 

By: Daniel Eklund
REL 0.2 Features [ reply ]  
2006-05-23 19:40
The following features are implemented:
* required and optional flags
* ability to change flag arity from 0 to N
* flag value validation
-- by set membership
-- by regular expression
* flag value translation (pre and post validation)
* auto help
* auto error checking
* usage and extended usage flags
* universal flag symbol change
* case by case flag symbol change (both normal and long form)
* alternate forms for normal flag
* alternate form for long form flag
* auto-generated property-type methods added to ARGV for flag values post-parsing
* sub-clause verbs
-- 'description'
-- 'arity'
-- 'no_args'
-- 'one_arg'
-- 'two_args'
-- 'long_form'
-- 'translate'
-- 'value_matches'
-- 'value_in_set'
-- 'required'
-- 'optional'
-- 'alternate_forms'
-- 'long_form'
-- 'dash_symbol'
-- 'long_dash_symbol'

The following features are not yet implemented:
* universal change to long-form symbol
* enforced flag/argument ordering
* character flags ('ls -l -f -a' == 'ls -laf')
* specification error checking (for ambiguous flags)
* system to allow easier user override of help and error messages.
* conditionalized flagsets (so that one flag can trigger a recommended flagset. Useful for emulating things like the 'cvs, command set: 'cvs checkout -r ect.')