51 lines
1.8 KiB
C#
51 lines
1.8 KiB
C#
|
//------------------------------------------------------------
|
||
|
// 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<string, object> 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<string, object> 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<string, object>(StringComparer.OrdinalIgnoreCase);
|
||
|
}
|
||
|
return memberNames;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|