[Mono-dev] Lazy Man´s Command Line Dispatcher - redux

Oscar Forero oforero at novell.com
Mon Jan 16 11:50:56 EST 2006


Hello,

After some very useful feed back from the #mono guys i did many changes to the library; Many of the suggestions are
implemented and i think is ready to be discussed again, attached is an use example with the required library, you only
need call make to recompile or just run it like shipped.
The source code for the library is at:
http://forge.novell.com/modules/xfmod/project/?cmdlineparser

The license has been change to MIT but not all the files are updated yet, next step to take. :-)

Some changes:

1. Renaming Operations are now call Commands, and the Parameters are called Options. The main class is call
CommandDispatcher.
2. Required attributes instead of naming naming conventions, that means set [Command] attribute before any method and
it will be take as a command, the name of the operation will be the name of the method but it can be overwritten passing
a string in the attribute [Command( MyName )] 
3. Not Only static methods are supported, you can pass an object instance to the CommandDispatcher.Configure() method.
4. Overloaded Commands are supported, one requirement is that the Commands need to have some differentiation on the
mandatory attributes, which are all not boolean that had not get a Default value assigned.

* I changed my tab settings but i have not reformat the whole code yet, but it will be done.
* DefaultCommands are still not working in the current code, is a little collateral damage of the re-factoring,  I am
working on fixing that problem.

regards,

Oscar Forero

-------------- next part --------------
A non-text attachment was scrubbed...
Name: LMCmdDispatcher-0.8.9.tar.bz2
Type: application/octet-stream
Size: 35354 bytes
Desc: not available
Url : http://lists.ximian.com/pipermail/mono-devel-list/attachments/20060116/9a6c0fdf/attachment.obj 


More information about the Mono-devel-list mailing list