Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ WriteCollectionInfo()

void System.Xml.Serialization.ReflectionAwareCodeGen.WriteCollectionInfo ( string typeVariable,
TypeDesc typeDesc,
[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.PublicMethods | DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.PublicNestedTypes | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.PublicEvents)] Type type )
inlineprivate

Definition at line 145 of file ReflectionAwareCodeGen.cs.

146 {
147 string cSharpName = CodeIdentifier.GetCSharpName(type);
148 string cSharpName2 = typeDesc.ArrayElementTypeDesc.CSharpName;
149 bool useReflection = typeDesc.ArrayElementTypeDesc.UseReflection;
150 if (typeDesc.IsCollection)
151 {
153 }
154 else if (typeDesc.IsEnumerable)
155 {
156 if (typeDesc.IsGenericInterface)
157 {
158 WriteMethodInfo(cSharpName, typeVariable, "System.Collections.Generic.IEnumerable*", true);
159 }
160 else if (!typeDesc.IsPrivateImplementation)
161 {
162 WriteMethodInfo(cSharpName, typeVariable, "GetEnumerator", true);
163 }
164 }
166 }
string GetStringForTypeof(string typeFullName, bool useReflection)
string WriteDefaultIndexerInit([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors|DynamicallyAccessedMemberTypes.PublicMethods|DynamicallyAccessedMemberTypes.PublicFields|DynamicallyAccessedMemberTypes.PublicNestedTypes|DynamicallyAccessedMemberTypes.PublicProperties|DynamicallyAccessedMemberTypes.PublicEvents)] Type type, string escapedName, bool collectionUseReflection, bool elementUseReflection)
string WriteMethodInfo(string escapedName, string typeVariable, string memberName, bool isNonPublic, params string[] paramTypes)

References System.Xml.Dictionary, System.Xml.Serialization.CodeIdentifier.GetCSharpName(), System.Xml.Serialization.ReflectionAwareCodeGen.GetStringForTypeof(), System.type, System.Xml.Serialization.ReflectionAwareCodeGen.WriteDefaultIndexerInit(), and System.Xml.Serialization.ReflectionAwareCodeGen.WriteMethodInfo().

Referenced by System.Xml.Serialization.ReflectionAwareCodeGen.WriteTypeInfo().