This project is read-only.
2009-11-22	Giacomo Stelluti Scala	<gsscoder@ymail.com>

	* IArgumentEnumerator.cs
		Modified. The interface now inherits from IEnumerator<string>.
		Added ::MovePrevious() method to be implemented (for now only) by StringArrayEnumerator.
		
	* OneCharStringEnumerator.cs (OneCharStringEnumerator)
		Modified. See IArgumentEnumerator[.cs].
		
	* StringArrayEnumerator.cs (StringArrayEnumerator)
		Modified. See IArgumentEnumerator[.cs].
	
	* OptionMap.cs (OptionMap)
		Modified.
		
	* OptionListAttribute.cs (OptionListAttribute)
		Modified. AttributeUsage removed, it's inherited from Option[Attribute].
		
	* OptionArrayAttribute.cs (OptionArrayAttribute)
		Added. This new attribute defines an option to store multiple values in an array.
		
	* OptionInfo.cs (OptionInfo)
		Modified. ::IsArray property added.
		::IsAttributeArrayCompatible property added.
		::SetValue(IList<string>, object) method added to handle OptionArray[Attribute].
		
	* SimpleOptionsWithArray.cs (SimpleOptionsWithArray)
	* SimpleOptionsWithArrayAndValueList.cs (SimpleOptionsWithArrayAndValueList)
		Added.
		
	* OptionArrayAttributeParsingFixture.cs (OptionArrayAttributeParsingFixture)
		Added. Unit tests for parsing with OptionArray[Attribute].
		
	* ArgumentParser.cs (ArgumentParser)
		Modified. Added protected method ::GetNextInputValues(IArgumentEnumerator) for handle OptionArray[Attribute].

	* ArgumentParserFixture.cs (ArgumentParserFixture)
		Added.
		
	* ParserException.cs -> CommandLineParserException.cs (CommandLineParserException)
		Renamed. CommandLineParserException is a name more consistent with other CommandLineParser* types
		than ParserException.
		
	* BaseFixture.cs (BaseFixture)
		Added. This is another step towards unit tests refactoring.

	* CommandLineParserBaseFixture.cs (CommandLineParserBaseFixture)
		Modified. Now inherits from BaseFixture. 

2009-11-16	Giacomo Stelluti Scala	<gsscoder@ymail.com>

	* IStringEnumerator.cs -> IArgumentEnumerator.cs (IArgumentEnumerator)
		Renamed. This interface is used to enumerate over a string vector (old StringEnumeratorEx)
		or a string item of this vector (old CharEnumeratorEx). I think that IArgumentEnumerator is a more
		meaningful name.
	
	* OptionGroupParser.cs (OptionGroupParser)
		Modified. Reference to IStringEnumerator changed to IArgumentEnumerator.
		Reference to CharEnumeratorEx changed to OneCharStringEnumerator.
		OptionMap referenced directly (IOptionMap interface currently removed).
		
	* LongOptionParser.cs (LongOptionParser)
		Modified. Reference to IStringEnumerator changed to IArgumentEnumerator.
		OptionMap referenced directly (IOptionMap interface currently removed).
		
	* StringEnumeratorEx.cs -> StringArrayEnumerator.cs (StringArrayEnumerator)
		Renamed. This isn't an extended version of CLR StringEnumerator. It's really a custom string array
		enumerator. So I decided to refactor it, starting from giving it a correct name.

	* CharEnumeratorEx.cs -> OneCharStringEnumerator.cs (OneCharStringEnumerator)
		Renamed. This is really a string enumerator that has its ::Current member made of a
		1-char string. Motivation for name refactoring as above.

	* CommandLineParser.cs (CommandLineParser)
		Modified. Reference to IStringEnumerator changed to IArgumentEnumerator.
		Reference to StringEnumeratorEx changed to StringArrayEnumerator.
		OptionMap referenced directly (IOptionMap interface currently removed).
		
	* EnumeratorsFixture.cs (EnumeratorsFixture)
		Modified. Reference to IStringEnumerator changed to IArgumentEnumerator.
		Reference to CharEnumeratorEx changed to OneCharStringEnumerator.
		Reference to StringEnumeratorEx changed to StringArrayEnumerator.
		
	* IOptionMap.cs (IOptionMap)
		Removed. Why keep an internal interface inherited only from one concrete type?
		
	* OptionMap.cs (OptionMap)
		Modified. Inheritance from IOptionMap removed.
		
	* OptionInfo.cs (OptionInfo)
		Modified. OptionMap referenced directly (IOptionMap interface currently removed).
		::IsDefined defined with automatic property syntax.

	* ArgumentParser.cs (ArgumentParser)
		Modified. Reference to IStringEnumerator changed to IArgumentEnumerator.
		OptionMap referenced directly (IOptionMap interface currently removed).
		
	* OptionMapFixture.cs (OptionMapFixture)
		Modified. OptionMap referenced directly (IOptionMap interface currently removed).
	
	* BaseOptionAttribute.cs (BaseOptionAttribute)
		Modified. Where possible, automatic properties used.
		
	* OptionListAttribute.cs (OptionListAttribute)
		Modified. ::Separator defined with automatic property syntax.
	
	* ValueListAttribute.cs (ValueListAttribute)
		Modified. ::MaximumElements defined with automatic property syntax.
		
	* CommandLineParserSettings.cs (ValueListAttribute)
		Modified. Where possible, automatic properties used.
		
2009-11-12	Giacomo Stelluti Scala	<gsscoder@ymail.com>

	* Program.cs (SampleApp.Program)
		Modified. Minor internal refactoring.
		
	* HelpText.cs
		Modified. [Steven Evans ->] Added support for automatic text wrap.
		Updated the type XML comment.
		Added possibility to add an additional new line after description of an option (::AdditionalNewLineAfterOption).
		
	* HelpTextFixture.cs 
		Modified. [Steven Evans ->] Added test code for new features of HelpText (see above).

Last edited Nov 22, 2009 at 10:38 AM by gsscoder, version 1

Comments

No comments yet.