103            _writer.
Write(
string.
Format(
CultureInfo.
InvariantCulture, 
"\r\n    sealed class XSFieldInfo {{\r\n       {3} fieldInfo;\r\n        public XSFieldInfo({2} t, {1} memberName){{\r\n            fieldInfo = t.GetField(memberName);\r\n        }}\r\n        public {0} this[{0} o] {{\r\n            get {{\r\n                return fieldInfo.GetValue(o);\r\n            }}\r\n            set {{\r\n                fieldInfo.SetValue(o, value);\r\n            }}\r\n        }}\r\n\r\n    }}\r\n    sealed class XSPropInfo {{\r\n        {4} propInfo;\r\n        public XSPropInfo({2} t, {1} memberName){{\r\n            propInfo = t.GetProperty(memberName);\r\n        }}\r\n        public {0} this[{0} o] {{\r\n            get {{\r\n                return propInfo.GetValue(o, null);\r\n            }}\r\n            set {{\r\n                propInfo.SetValue(o, value, null);\r\n            }}\r\n        }}\r\n    }}\r\n    sealed class XSArrayInfo {{\r\n        {4} propInfo;\r\n        public XSArrayInfo({4} propInfo){{\r\n            this.propInfo = propInfo;\r\n        }}\r\n        public {0} this[{0} a, int i] {{\r\n            get {{\r\n                return propInfo.GetValue(a, new {0}[]{{i}});\r\n            }}\r\n            set {{\r\n                propInfo.SetValue(a, value, new {0}[]{{i}});\r\n            }}\r\n        }}\r\n    }}\r\n", 
"object", 
"string", 
typeof(
Type).
FullName, 
typeof(
FieldInfo).
FullName, 
typeof(
PropertyInfo).
FullName));
 
 
  138            for (
int j = 0; 
j < fields.Length; 
j++)
 
 
  160            else if (!
typeDesc.IsPrivateImplementation)
 
 
  188        for (
int i = 0; i < member.Length; i++)
 
 
  294        for (
int i = 0; i < 
args.Length; i++)
 
 
  362        return "[" + 
obj + 
"]";
 
 
  413        if (
cast != 
null && 
cast.Length > 0)
 
  436        if (
arg == 
null || 
arg.Length == 0)
 
 
  568        foreach (
char c 
in value)
 
 
 
virtual void Add(object key, object? value)
 
static CultureInfo InvariantCulture
 
static char ToCharUpper(int value)
 
static string XmlSerializerUnsupportedType
 
static string Format(string resourceFormat, object p1)
 
static void CheckValidIdentifier([NotNull] string ident)
 
static string MakeValidInternal(string identifier)
 
static string GetCSharpName(string name)
 
static string GetName(Assembly a)
 
void WriteArrayLocalDecl(string typeName, string variableName, string initValue, TypeDesc arrayTypeDesc)
 
string WriteAssemblyInfo(Type type)
 
void WriteEnumCase(string fullTypeName, ConstantMapping c, bool useReflection)
 
string GetStringForTypeof(string typeFullName, bool useReflection)
 
string GetStringForMethod(string obj, string typeFullName, string memberName, bool useReflection)
 
string WriteMemberInfo([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors|DynamicallyAccessedMemberTypes.PublicMethods|DynamicallyAccessedMemberTypes.PublicFields|DynamicallyAccessedMemberTypes.PublicNestedTypes|DynamicallyAccessedMemberTypes.PublicProperties|DynamicallyAccessedMemberTypes.PublicEvents)] Type type, string escapedName, string typeVariable, string memberName)
 
void WriteCreateInstance(string escapedName, string source, bool useReflection, bool ctorInaccessible)
 
string GetStringForCreateInstance(string escapedTypeName, bool useReflection, bool ctorInaccessible, bool cast)
 
int _nextReflectionVariableNumber
 
static void WriteQuotedCSharpString(IndentedWriter writer, string value)
 
void WriteLocalDecl(string typeFullName, string variableName, string initValue, bool useReflection)
 
void WriteCollectionInfo(string typeVariable, TypeDesc typeDesc, [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors|DynamicallyAccessedMemberTypes.PublicMethods|DynamicallyAccessedMemberTypes.PublicFields|DynamicallyAccessedMemberTypes.PublicNestedTypes|DynamicallyAccessedMemberTypes.PublicProperties|DynamicallyAccessedMemberTypes.PublicEvents)] Type type)
 
string WriteDefaultIndexerInit([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors|DynamicallyAccessedMemberTypes.PublicMethods|DynamicallyAccessedMemberTypes.PublicFields|DynamicallyAccessedMemberTypes.PublicNestedTypes|DynamicallyAccessedMemberTypes.PublicProperties|DynamicallyAccessedMemberTypes.PublicEvents)] Type type, string escapedName, bool collectionUseReflection, bool elementUseReflection)
 
string WriteTypeInfo(TypeScope scope, TypeDesc typeDesc, Type type)
 
string GetStringForEnumMember(string typeFullName, string memberName, bool useReflection)
 
string WriteMethodInfo(string escapedName, string typeVariable, string memberName, bool isNonPublic, params string[] paramTypes)
 
void WriteTypeCompare(string variable, string escapedTypeName, bool useReflection)
 
string GetStringForEnumLongValue(string variable, bool useReflection)
 
string GenerateVariableName(string prefix, string fullName)
 
string GetStringForEnumCompare(EnumMapping mapping, string memberName, bool useReflection)
 
void WriteQuotedCSharpString(string value)
 
void WriteInstanceOf(string source, string escapedTypeName, bool useReflection)
 
void WriteReflectionInit(TypeScope scope)
 
ReflectionAwareCodeGen(IndentedWriter writer)
 
readonly IndentedWriter _writer
 
string GetStringForMethodInvoke(string obj, string escapedTypeName, string methodName, bool useReflection, params string[] args)
 
Hashtable _reflectionVariables
 
string GetStringForCreateInstance(string escapedTypeName, bool useReflection, bool ctorInaccessible, bool cast, string arg)
 
string GetStringForArrayMember(string arrayName, string subscript, TypeDesc arrayTypeDesc)
 
string GetStringForCreateInstance(string type, string cast, bool nonPublic, string arg)
 
string GetStringForMember(string obj, string memberName, TypeDesc typeDesc)
 
void WriteArrayTypeCompare(string variable, string escapedTypeName, string elementTypeName, bool useReflection)
 
string GetReflectionVariable(string typeFullName, string memberName)
 
void WriteMappingInfo(TypeMapping mapping, string typeVariable, [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors|DynamicallyAccessedMemberTypes.PublicMethods|DynamicallyAccessedMemberTypes.PublicFields|DynamicallyAccessedMemberTypes.PublicNestedTypes|DynamicallyAccessedMemberTypes.PublicProperties|DynamicallyAccessedMemberTypes.PublicEvents)] Type type)
 
TypeDesc ArrayElementTypeDesc
 
Type GetTypeFromTypeDesc(TypeDesc typeDesc)
 
static PropertyInfo GetDefaultIndexer([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors|DynamicallyAccessedMemberTypes.PublicMethods|DynamicallyAccessedMemberTypes.PublicFields|DynamicallyAccessedMemberTypes.PublicNestedTypes|DynamicallyAccessedMemberTypes.PublicProperties|DynamicallyAccessedMemberTypes.PublicEvents)] Type type, string memberInfo)
 
TypeMapping GetTypeMappingFromTypeDesc(TypeDesc typeDesc)
 
TypeDesc GetTypeDesc(string name, string ns)
 
DynamicallyAccessedMemberTypes
 
static ? Type GetUnderlyingType(Type nullableType)