//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------ namespace System.Runtime.Serialization { using System; using System.Xml; using System.Xml.Schema; using System.CodeDom; using System.Collections.Generic; internal class ContractCodeDomInfo { internal bool IsProcessed; internal CodeTypeDeclaration TypeDeclaration; internal CodeTypeReference TypeReference; internal CodeNamespace CodeNamespace; internal bool ReferencedTypeExists; internal bool UsesWildcardNamespace; string clrNamespace; Dictionary memberNames; internal string ClrNamespace { get { return (ReferencedTypeExists ? null : clrNamespace); } set { if (ReferencedTypeExists) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.CannotSetNamespaceForReferencedType, TypeReference.BaseType))); else clrNamespace = value; } } internal Dictionary GetMemberNames() { if (ReferencedTypeExists) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.CannotSetMembersForReferencedType, TypeReference.BaseType))); else { if (memberNames == null) { memberNames = new Dictionary(StringComparer.OrdinalIgnoreCase); } return memberNames; } } } }