2005-11-30 Gert Driesen * CodeRemoveEventStatement.cs: Event returns new CodeEventReference if underlying value is null. 2005-11-20 Gert Driesen * CodeParameterDeclarationExpressionCollection.cs: Use CollectionBase implementation of IList.Remove to handle removal of item from collection. * CodeCatchClauseCollection.cs: Same. * CodeStatementCollection.cs: Same. * CodeAttributeDeclarationCollection.cs: Same. * CodeTypeMemberCollection.cs: Same. * CodeDirectiveCollection.cs: Same. * CodeTypeDeclarationCollection.cs: Same. * CodeNamespaceCollection.cs: Same. * CodeExpressionCollection.cs: Same. * CodeTypeReferenceCollection.cs: Same. * CodeTypeParameterCollection.cs: Same. * CodeCommentStatementCollection.cs: Same. * CodeAttributeArgumentCollection.cs: Same. 2005-11-20 Gert Driesen * CodeEventReferenceExpression.cs: Set eol-style to native. * CodeArgumentReferenceExpression.cs: Set eol-style to native. * CodeParameterDeclarationExpressionCollection.cs: Set eol-style to native. * CodeRegionMode.cs: Set eol-style to native. * FieldDirection.cs: Set eol-style to native. * CodeChecksumPragma.cs: Set eol-style to native. * CodeCatchClauseCollection.cs: Set eol-style to native. * CodeAttachEventStatement.cs: Set eol-style to native. * CodeSnippetCompileUnit.cs: Set eol-style to native. * CodeNamespace.cs: Set eol-style to native. * CodePropertySetValueReferenceExpression.cs: Set eol-style to native. * CodeTypeReference.cs: Set eol-style to native. * CodeDirectionExpression.cs: Set eol-style to native. * CodeThisReferenceExpression.cs: Set eol-style to native. * CodeSnippetStatement.cs: Set eol-style to native. * CodeMemberMethod.cs: Set eol-style to native. * CodeMemberProperty.cs: Set eol-style to native. * CodeEntryPointMethod.cs: Set eol-style to native. * CodeTypeReferenceOptions.cs: Set eol-style to native. * CodeIndexerExpression.cs: Set eol-style to native. * CodeCatchClause.cs: Set eol-style to native. * CodeStatementCollection.cs: Set eol-style to native. * CodeRegionDirective.cs: Set eol-style to native. * CodeTypeParameter.cs: Set eol-style to native. * CodeIterationStatement.cs: Set eol-style to native. * CodeRemoveEventStatement.cs: Set eol-style to native. * CodeVariableReferenceExpression.cs: Set eol-style to native. * CodeAttributeDeclarationCollection.cs: Set eol-style to native. * CodeTryCatchFinallyStatement.cs: Set eol-style to native. * CodeTypeMemberCollection.cs: Set eol-style to native. * CodeCompileUnit.cs: Set eol-style to native. * CodePrimitiveExpression.cs: Set eol-style to native. * CodeDirectiveCollection.cs: Fixed line endings. Set eol-style to native. * CodeTypeDeclarationCollection.cs: Set eol-style to native. * CodeNamespaceImportCollection.cs: Set eol-style to native. * CodeNamespaceCollection.cs: Set eol-style to native. * CodeTypeMember.cs: Set eol-style to native. * CodeAttributeDeclaration.cs: Set eol-style to native. * CodeConditionStatement.cs: Set eol-style to native. * CodeExpressionCollection.cs: Set eol-style to native. * CodeTypeReferenceCollection.cs: Set eol-style to native. * CodeSnippetTypeMember.cs: Set eol-style to native. * CodeDelegateCreateExpression.cs: Set eol-style to native. * CodeLinePragma.cs: Set eol-style to native. * CodeMethodReferenceExpression.cs: Set eol-style to native. * CodeVariableDeclarationStatement.cs: Set eol-style to native. * CodeTypeReferenceExpression.cs: Set eol-style to native. * CodeArrayCreateExpression.cs: Set eol-style to native. * CodeFieldReferenceExpression.cs: Set eol-style to native. * CodePropertyReferenceExpression.cs: Set eol-style to native. * CodeTypeDeclaration.cs: Set eol-style to native. * CodeTypeConstructor.cs: Set eol-style to native. * CodeNamespaceImport.cs: Set eol-style to native. * CodeTypeParameterCollection.cs: Use for loop instead of foreach to add elements in AddRange method. Fixed line endings. Set eol-style to native. * CodeTypeParameterCollection.cs: Set eol-style to native. * CodeExpression.cs: Set eol-style to native. * CodeBinaryOperatorType.cs: Set eol-style to native. * CodeSnippetExpression.cs: Set eol-style to native. * CodeCommentStatementCollection.cs: Set eol-style to native. * CodeMethodReturnStatement.cs: Set eol-style to native. * CodeObject.cs: Set eol-style to native. * CodeParameterDeclarationExpression.cs: Set eol-style to native. * CodeDelegateInvokeExpression.cs: Set eol-style to native. * CodeThrowExceptionStatement.cs: Set eol-style to native. * CodeObjectCreateExpression.cs: Set eol-style to native. * CodeTypeDelegate.cs: Set eol-style to native. * CodeLabeledStatement.cs: Set eol-style to native. * CodeArrayIndexerExpression.cs: Set eol-style to native. * CodeBinaryOperatorExpression.cs: Set eol-style to native. * CodeAttributeArgumentCollection.cs: Set eol-style to native. * MemberAttributes.cs: Set eol-style to native. * CodeExpressionStatement.cs: Set eol-style to native. * CodeConstructor.cs: Set eol-style to native. * CodeTypeOfExpression.cs: Set eol-style to native. * CodeCommentStatement.cs: Set eol-style to native. * CodeGotoStatement.cs: Set eol-style to native. * CodeComment.cs: Set eol-style to native. * CodeStatement.cs: Set eol-style to native. * CodeMemberEvent.cs: Set eol-style to native. * CodeBaseReferenceExpression.cs: Set eol-style to native. * CodeAssignStatement.cs: Set eol-style to native. * CodeCastExpression.cs: Set eol-style to native. * CodeMemberField.cs: Set eol-style to native. * CodeMethodInvokeExpression.cs: Set eol-style to native. * CodeDirective.cs: Set eol-style to native. 2005-11-19 Gert Driesen * CodeCatchClauseCollection.cs: Added null check to AddRange overloads and use for loop to add elements. * CodeAttributeDeclarationCollection.cs: Added null check to AddRange overloads and use for loop to add elements. * CodeTypeMemberCollection.cs: Added null check to AddRange overloads and use for loop to add elements. * CodeTypeDeclarationCollection.cs: Added null check to AddRange overloads and use for loop to add elements. * CodeNamespaceImportCollection.cs: Added null check to Add and perform case-insensitive check on namespace to avoid duplicate namespace imports. Added null check to AddRange method. * CodeNamespaceCollection.cs: Added null check to AddRange overloads and use for loop to add elements. * CodeCommentStatementCollection.cs: Added null check to AddRange overloads and use for loop to add elements. * CodeAttributeArgumentCollection.cs: Added null check to AddRange overloads and use for loop to add elements. * CodeDirectiveCollection.cs: Added null check to AddRange overloads and use for loop to add elements. * CodeTypeParameterCollection.cs: Added null check to AddRange overloads and use for loop to add elements. 2005-11-08 Gert Driesen * CodeExpressionCollection.cs: Fixed OutOfMemoryException when passing collection to AddRange method on itself. * CodeTypeReferenceCollection.cs: same. * CodeParameterDeclarationExpressionCollection.cs: same. * CodeStatementCollection.cs: same. 2005-11-04 Gert Driesen * CodeEventReferenceExpression.cs: EventName now returns zero-length string if underlying value is null. * CodeParameterDeclarationExpressionCollection.cs: Fixed AddRange to add each item to collection using Add method to ensure validation is performed. * CodeChecksumPragma.cs: FileName now returns zero-length string if underlying value is null. * CodeSnippetCompileUnit.cs: Value now returns zero-length string if underlying value is null. * CodeNamespace.cs: Name now returns zero-length string if underlying value is null. * CodeSnippetStatement.cs: Value now returns zero-length string if underlying value is null. * CodeMemberMethod.cs: code formatting change. * CodeCatchClause.cs: CatchExceptionType now returns CodeTypeReference instance for System.Exception if underlying value is null. LocalName now returns zero-length string if underlying value is null. * CodeStatementCollection.cs: Fixed AddRange to add each item to collection using Add method to ensure validation is performed. Code formatting changes. * CodeRegionDirective.cs: RegionText now returns zero-length string if underlying value is null. * CodeTypeParameter.cs: Name now returns zero-length string if underlying value is null. * CodeVariableReferenceExpression.cs: VariableName now returns zero-length string if underlying value is null. * CodeDefaultValueExpression.cs: Type now returns CodeTypeReference for void if underlying value is null. * CodeExpressionCollection.cs: Fixed AddRange to add each item to collection using Add method to ensure validation is performed. * CodeSnippetTypeMember.cs: Text now returns zero-length string if underlying value is null. * CodeTypeReferenceCollection.cs: Fixed AddRange to add each item to collection using Add method to ensure validation is performed. * CodeDelegateCreateExpression.cs: DelegateType now returns CodeTypeReference for void if underlying value is null. MethodName now returns zero-length string if underlying value is null. * CodeMethodReferenceExpression.cs: MethodName now returns zero-length string if underlying value is null. * CodeLinePragma.cs: FileName now returns zero-length string if underlying value is null. * CodeTypeReferenceExpression.cs: Type now return CodeTypeReference for void if underlying value is null. * CodeVariableDeclarationStatement.cs: Name now return zero-length string if underlying value is null. Type returns CodeTypeReference for void if underlying value is null. * CodePropertyReferenceExpression.cs: PropertyName now returns zero-length string if underlying value is null. * CodeNamespaceImport.cs: Namespace now returns zero-length string if underlying value is null. * CodeTypeConstructor.cs: Name is fixed to ".cctor" to match MS.NET. * CodeSnippetExpression.cs: Value now returns zero-length string if underlying value is null. * CodeParameterDeclarationExpression.cs: Name now returns zero-length string if underlying value is null. Type now returns CodeTypeReference for void if underlying value is null. * CodeObjectCreateExpression.cs: CreateType now returns CodeTypeReference for void if underlying value is null. * CodeLabeledStatement.cs: Label returns zero-length string if underlying value is null. * CodeConstructor.cs: Name is fixed to ".ctor" to match MS.NET. * CodeTypeOfExpression.cs: Type returns CodeTypeReference for void if underlying value is null. * CodeGotoStatement.cs: Only throw ArgumentNullException for null or zero-length label on 2.0 profile. * CodeCastExpression.cs: TargetType returns CodeTypeReference for void if underlying value is null. * CodeMethodInvokeExpression.cs: Method returns a default CodeMethodReferenceExpression instance if the underlying value is null. 2005-10-25 Gert Driesen * CodeAttachEventStatement.cs: Fixed extra removal in r52147. * CodeAttributeDeclaration.cs: Make sure AttributeType is updated when Name is set or changed. For constructors taking attribute type, use BaseType of attribute type as name of CodeAttributeDeclaration. 2005-10-25 Sebastien Pouliot * CodeAttributeDeclaration.cs: Fixed extra removal in r52147. 2005-10-24 Gert Driesen * CodeArgumentReferenceExpression.cs: If ParameterName is null, return string.Empty. * CodeArrayCreateExpression.cs: Implement default value in CreateType property. * CodeAttachEventStatement.cs: Implement default value in Event property. * CodeAttributeArgument.cs: Implement default value in Name property. * CodeAttributeDeclaration.cs: Implement default value in Name property. 2005-10-24 Gert Driesen * CodeTypeReference.cs: Ignore ArrayElementType for determining BaseType if ArrayRank zero or less. Fixes bug #76535. 2005-10-24 Sebastien Pouliot * CodeArgumentReferenceExpression.cs: Added default value for arameterName. * CodeArrayCreateExpression.cs: Added default value for createType. * CodeAttachEventStatement.cs: Added default value for eventRef. * CodeAttributeArgument.cs: Added default value for name. * CodeAttributeArgumentCollection.cs: Fixed AddRange methods not to throw an exception (as the list was being changed when using an numerator). * CodeAttributeDeclaration.cs: Added default value for name. * CodeAttributeDeclarationCollection.cs: Fixed AddRange methods not to throw an exception (as the list was being changed when using an numerator). * CodeCastExpression.cs: Added default value for targetType. * CodeCatchClause.cs: Added default value for catchExceptionType and ocalName. * CodeCatchClauseCollection.cs: Fixed AddRange methods not to throw an xception (as the list was being changed when using an enumerator). * CodeCommentStatementCollection.cs: Fixed AddRange methods not to hrow an exception (as the list was being changed when using an numerator). * CodeDelegateCreateExpression.cs: Added default value for elegateType and methodName. * CodeEventReferenceExpression.cs: Added default value for eventName. * CodeExpressionCollection.cs: Fixed AddRange methods not to throw an xception (as the list was being changed when using an enumerator). * CodeFieldReferenceExpression.cs: Added default value for fieldName. * CodeMethodInvokeExpression.cs: Added default value for method. * CodeMethodReferenceExpression.cs: Added default value for methodName * CodeNamespace.cs: Added default value for name. * CodeNamespaceCollection.cs: Fixed AddRange methods not to throw an xception (as the list was being changed when using an enumerator). * CodeNamespaceImport.cs: Added default value for nameSpace. * CodeNamespaceImportCollection.cs: SyncRoot returns null. * CodeObjectCreateExpression.cs: Added default value for createType. * CodeParameterDeclarationExpression.cs: Added default value for name and type. * CodeParameterDeclarationExpressionCollection.cs: Fixed AddRange methods not to throw an exception (as the list was being changed when using an enumerator). * CodePropertyReferenceExpression.cs: Added default value for propertyName. * CodeRemoveEventStatement.cs: Added default value for eventRef. * CodeSnippetExpression.cs: Added default value for value. * CodeSnippetStatement.cs: Added default value for value. * CodeSnippetTypeMember.cs: Added default value for text. * CodeStatementCollection.cs: Fixed AddRange methods not to throw an exception (as the list was being changed when using an enumerator). * CodeTypeDeclarationCollection.cs: Fixed AddRange methods not to throw an exception (as the list was being changed when using an enumerator). * CodeTypeMemberCollection.cs: Fixed AddRange methods not to throw an exception (as the list was being changed when using an enumerator). * CodeTypeOfExpression.cs: Added default value for type. * CodeTypeReferenceCollection.cs: Fixed AddRange methods not to throw an exception (as the list was being changed when using an enumerator). * CodeTypeReferenceExpression.cs: Added default value for type. * CodeVariableDeclarationStatement.cs: Added default value for name and type. * CodeVariableReferenceExpression.cs: Added default value for variableName. 2005-10-23 Sebastien Pouliot * CodeTypeParameterCollection.cs: Added missing Add(string) method. 2005-10-23 Sebastien Pouliot * CodeAttributeDeclaration.cs: Added new 2.0 ctor and AttributeType property. * CodeDefaultValueExpression.cs: New. Implemented (2.0). * CodeDirectiveCollection.cs: Completed implementation. * CodeGotoStatement.cs: Added default ctor for 2.0. * CodeIndexerExpression.cs: Fixed typo in header. * CodeLinePragma.cs: Added default ctor for 2.0. * CodeRegionMode.cs: Added missing None element. * CodeSnippetCompileUnit.cs: Added default ctor for 2.0. * CodeTypeDeclaration.cs: Added ComVisible(false) on TypeParameters property. * CodeTypeParameterCollection.cs: Completed implementation. 2005-10-07 Gert Driesen * CodeTypeReference.cs: Fixed Parse implementation on 1.0 profile. Added MonoTODO's. 2005-10-05 Gert Driesen * CodeTypeReference.cs: Added support for generic type parameters. 2005-10-02 Gert Driesen * CodeTypeReference.cs: Added default ctor for 2.0 profile. Set Options to CodeReferenceOptions.GenericTypeParameter when instance is constructed using ctor taking CodeTypeParameter argument. Modified BaseType property to return BaseType of ArrayElementType if available. Fixed some bugs in array and typeparameter support. 2005-07-24 Gert Driesen * CodeTypeReference.cs: Added internal IsInterface property. * CodeTypeDelegate.cs: System.Delegate is base type, and make sure ReturnType is initialized. 2005-06-28 Gert Driesen * CodeTypeReference.cs: Also consider null type name as void, throw ArgumentNullException for null type on 2.0 profile. 2005-06-26 Gert Driesen * CodeMemberProperty.cs: Default value of Type is empty CodeTypeReference. 2005-06-25 Gert Driesen * CodeMemberField.cs: Default value of Type is empty CodeTypeReference. 2004-09-14 Marek Safar * CodeTypeReference.cs: Fix #65854 2004-09-06 Marek Safar * CodeCompileUnit.cs, * CodeMemberMethod.cs, * CodeMethodReferenceExpression.cs, * CodeStatement.cs, * CodeTypeDeclaration.cs, * CodeTypeMember.cs, * CodeTypeReference.cs : Implemented NET_2_0. * CodeChecksumPragma.cs, * CodeDirective.cs, * CodeDirectiveCollection.cs, * CodeRegionDirective.cs, * CodeRegionMode.cs, * CodeTypeParameter.cs, * CodeTypeParameterCollection.cs, * CodeTypeReferenceOptions.cs : New NET_2_0 files 2004-09-01 Marek Safar * CodeCatchClause.cs: System.Exception is default type for string constructor. * CodeTypeMember.cs: Default member attributes are private and final. * CodeTypeReference.cs: Implemented array info extraction from Type. 2004-08-09 Gonzalo Paniagua Javier * CodeEntryPointMethod.cs: patch by Fawad Halim that makes the entry point method public. 2004-02-04 Jackson Harper * CodeTypeMember.cs: Name is String.Empty if not set. * CodeComment.cs: Text is String.Empty if not set. 2003-12-23 Jaroslaw Kowalski * CodeAttributeDeclaration.cs: * CodeDelegateInvokeExpression: -Added "params" keyword to constructors 2003-08-15 Jaroslaw Kowalski * CodeTypeDeclaration.cs: - TypeAttributes of CodeTypeDeclaration now defaults to TypeAttributes.Public (same as MS implementation) 2003-04-25 Gonzalo Paniagua Javier * CodeEventReferenceExpression.cs: fixed typo that prevented event name from being set. 2003-04-24 Gonzalo Paniagua Javier * CodeMemberProperty.cs: fixed HasGet and HasSet to actually generate code for the property. 2002-10-11 Ravi Pratap * CodeMethodInvokeExpression.cs : Fix second constructor so that the last argument is params - that is what the docs say. 2002-09-11 Gonzalo Paniagua Javier * CodeBinaryOperatorType.cs: * CodeMemberEvent.cs: * CodeParameterDeclarationExpression.cs: * CodeTypeMember.cs: * CodeTypeReference.cs: * CodeTypeReferenceCollection.cs: misc. fixes 2002-05-28 Daniel Stodden * CodeArrayCreateExpression.cs: typo + comments * CodeAttributeArgumentCollection.cs: Add() signature fixed * CodeAttributeDeclarationCollection.cs: Add() signature fixed * CodeCatchClause.cs: ctor signature fixed * CodeCatchClauseCollection.cs: Add() signature fixed * CodeCommentStatementCollection.cs: Add() signature fixed * CodeConstructor.cs: ctor added * CodeExpressionCollection.cs: Populate* events: nullref checks added * CodeNamespace.cs: Populate* events: nullref checks added * CodeNamespaceCollection.cs: Add() signature fixed * CodeParameterDeclarationExpressionCollection.cs: Add() signature fixed * CodeStatementCollection.cs: Add() signature fixed, missing overload added * CodeTypeConstructor.cs: class name typo :P * CodeTypeDeclaration.cs: finally figured out how TypeAttributes work. * CodeTypeDeclarationCollection.cs: Add() signature fixed * CodeTypeReference.cs: added MonoTODOs. some corrections on array type behavior. * CodeTypeReferenceCollection.cs: Add() signature fixed * MemberAttributes.cs: just comments 2002-05-11 Daniel Stodden * CodeAttributeArgumentCollection.cs: inherits CollectionBase * CodeAttributeDeclarationCollection.cs: inherits CollectionBase * CodeCatchClauseCollection.cs: inherits CollectionBase * CodeExpressionCollection.cs: inherits CollectionBase * CodeNamespaceImportCollection.cs: not CollectionBase, but matching MS docs * CodeParameterDeclarationCollection.cs: inherits CollectionBase * CodeStatementCollection.cs: inherits CollectionBase * CodeArrayCreateExpression.cs: corrections, completions, whatever * CodeAssignStatement.cs: corrections, completions, whatever * CodeAttachEventStatement.cs: corrections, completions, whatever * CodeAttributeArgument.cs: corrections, completions, whatever * CodeAttributeDeclaration.cs: corrections, completions, whatever * CodeBaseReferenceExpression.cs: corrections, completions, whatever * CodeBinaryOperatorExpression.cs: corrections, completions, whatever * CodeCastExpression.cs: corrections, completions, whatever * CodeCatchClause.cs: corrections, completions, whatever * CodeCommentStatement.cs: corrections, completions, whatever * CodeConstructor.cs: corrections, completions, whatever * CodeDelegateCreateExpression.cs: corrections, completions, whatever * CodeDelegateInvokeExpression.cs: corrections, completions, whatever * CodeExpression.cs: corrections, completions, whatever * CodeFieldReferenceExpression.cs: corrections, completions, whatever * CodeIndexerExpression.cs: corrections, completions, whatever * CodeLinePragma.cs: corrections, completions, whatever * CodeMemberEvent.cs: corrections, completions, whatever * CodeMemberField.cs: corrections, completions, whatever * CodeMemberMethod.cs: corrections, completions, whatever * CodeMemberProperty.cs: corrections, completions, whatever * CodeMethodInvokeExpression.cs: corrections, completions, whatever * CodeMethodReturnStatement.cs: corrections, completions, whatever * CodeNamespace.cs: corrections, completions, whatever * CodeNamespaceImport.cs: corrections, completions, whatever * CodeObject.cs: corrections, completions, whatever * CodeObjectCreateExpression.cs: corrections, completions, whatever * CodeParameterDeclarationExpression.cs: corrections, completions, whatever * CodePrimitiveExpression.cs: corrections, completions, whatever * CodePropertyReferenceExpression.cs: corrections, completions, whatever * CodeStatement.cs: corrections, completions, whatever * CodeThisReferenceExpression.cs: corrections, completions, whatever * CodeThrowExceptionStatement.cs: corrections, completions, whatever * CodeTryCatchFinallyStatement.cs: corrections, completions, whatever * CodeTypeDeclaration.cs: corrections, completions, whatever * CodeTypeMember.cs: corrections, completions, whatever * CodeTypeOfExpression.cs: corrections, completions, whatever * CodeTypeReferenceExpression.cs: corrections, completions, whatever * CodeVariableDeclarationStatement.cs: corrections, completions, whatever * FieldDirection.cs: corrections, completions, whatever * CodeArgumentReferenceExpression.cs: added * CodeArrayIndexerExpression.cs: added * CodeComment.cs: added * CodeCommentStatementCollection.cs: added * CodeCompileUnit.cs: added * CodeConditionStatement.cs: added * CodeDirectionExpression.cs: added * CodeEntryPointMethod.cs: added * CodeEventReferenceExpression.cs: added * CodeExpressionStatement.cs: added * CodeGotoStatement.cs: added * CodeIterationStatement.cs: added * CodeLabeledStatement.cs: added * CodeMethodReferenceExpression.cs: added * CodeNamespaceCollection.cs: added * CodePropertySetValueReferenceExpression.cs: added * CodeRemoveEventStatement.cs: added * CodeSnippetCompileUnit.cs: added * CodeSnippetExpression.cs: added * CodeSnippetStatement.cs: added * CodeSnippetTypeMember.cs: added * CodeTypeConstructor.cs: added * CodeTypeDeclarationCollection.cs: added * CodeTypeDelegate.cs: added * CodeTypeMemberCollection.cs: added * CodeTypeReference.cs: added * CodeTypeReferenceCollection.cs: added * CodeVariableReferenceExpression.cs: added 2001-07-15 Sean MacIsaac * MemberAttributes.cs: Added so rest of classes would compile. * FieldDirection.cs: Added so rest of classes would compile. * CodeTypeMember.cs: Added so rest of classes would compile. * CodeTypeDeclaration.cs: Added so rest of classes would compile. * CodeObject.cs: Added so rest of classes would compile. * CodeBinaryOperatorType.cs: Added so rest of classes would compile. 2001-07-12 Sean MacIsaac * All files implementing IList: Added IsFixedSize property. * All files: Changed CodeDOM to CodeDom.