1669 references to Writer
System.Private.Xml (1669)
System\Xml\Serialization\XmlSerializationReader.cs (940)
2232Writer.Write(Access); 2233Writer.Write(" class "); 2234Writer.Write(ClassName); 2235Writer.Write(" : "); 2236Writer.Write(typeof(System.Xml.Serialization.XmlSerializationReader).FullName); 2237Writer.WriteLine(" {"); 2238Writer.Indent++; 2299Writer.WriteLine(); 2302Writer.Write("string "); 2303Writer.Write(idName); 2304Writer.WriteLine(";"); 2307Writer.WriteLine(); 2308Writer.WriteLine("protected override void InitIDs() {"); 2309Writer.Indent++; 2314Writer.Write(idName); 2315Writer.Write(" = Reader.NameTable.Add("); 2317Writer.WriteLine(");"); 2319Writer.Indent--; 2320Writer.WriteLine("}"); 2322Writer.Indent--; 2323Writer.WriteLine("}"); 2342Writer.Write("if (Reader.IsStartElement("); 2344Writer.Write(", "); 2346Writer.WriteLine(")) {"); 2347Writer.Indent++; 2354Writer.WriteLine("else {"); 2355Writer.Indent++; 2357Writer.Write(func); 2358Writer.Write("("); 2359Writer.Write(node); 2362Writer.Write(", "); 2366ReflectionAwareCodeGen.WriteQuotedCSharpString(Writer, expectedElement); 2368Writer.WriteLine(");"); 2371Writer.Indent--; 2372Writer.WriteLine("}"); 2378Writer.WriteLine(); 2379Writer.WriteLine("protected override void InitCallbacks() {"); 2380Writer.Indent++; 2401Writer.Write("AddReadCallback("); 2403Writer.Write(", "); 2405Writer.Write(", "); 2406Writer.Write(RaCodeGen.GetStringForTypeof(mapping.TypeDesc.CSharpName, mapping.TypeDesc.UseReflection)); 2407Writer.Write(", new "); 2408Writer.Write(typeof(XmlSerializationReadCallback).FullName); 2409Writer.Write("(this."); 2410Writer.Write(methodName); 2411Writer.WriteLine("));"); 2416Writer.Indent--; 2417Writer.WriteLine("}"); 2421Writer.WriteLine(); 2422Writer.Write("object "); 2423Writer.Write(dummyArrayMethodName); 2424Writer.WriteLine("() {"); 2425Writer.Indent++; 2426Writer.WriteLine("// dummy array method"); 2427Writer.WriteLine("UnknownNode(null);"); 2428Writer.WriteLine("return null;"); 2429Writer.Indent--; 2430Writer.WriteLine("}"); 2478Writer.WriteLine(); 2479Writer.Write("public object[] "); 2480Writer.Write(methodName); 2481Writer.WriteLine("() {"); 2482Writer.Indent++; 2483Writer.WriteLine("Reader.MoveToContent();"); 2485Writer.Write("object[] p = new object["); 2486Writer.Write(mappings.Length.ToString(CultureInfo.InvariantCulture)); 2487Writer.WriteLine("];"); 2493Writer.Indent++; 2571if (members.Length > 0 && members[0].Mapping.IsReturnValue) Writer.WriteLine("IsReturnValue = true;"); 2581Writer.WriteLine("Reader.MoveToElement();"); 2588Writer.WriteLine("if (Reader.IsEmptyElement) { Reader.Skip(); Reader.MoveToContent(); continue; }"); 2589Writer.WriteLine("Reader.ReadStartElement();"); 2593Writer.WriteLine("int state = 0;"); 2596Writer.Indent++; 2601Writer.WriteLine("Reader.MoveToContent();"); 2608Writer.WriteLine("ReadEndElement();"); 2610Writer.Indent--; 2611Writer.WriteLine("}"); 2615Writer.WriteLine("Reader.MoveToContent();"); 2619Writer.WriteLine("return p;"); 2620Writer.Indent--; 2621Writer.WriteLine("}"); 2632Writer.Write(arrayName); 2633Writer.Write("["); 2634Writer.Write(i.ToString(CultureInfo.InvariantCulture)); 2635Writer.Write("] = "); 2639Writer.Write("null"); 2643Writer.Write(RaCodeGen.GetStringForCreateInstance(mappings[i].TypeDesc!.CSharpName, mappings[i].TypeDesc!.UseReflection, false, false)); 2645Writer.WriteLine(";"); 2657Writer.WriteLine(); 2658Writer.Write("public object[] "); 2659Writer.Write(methodName); 2660Writer.WriteLine("() {"); 2661Writer.Indent++; 2663Writer.WriteLine("Reader.MoveToContent();"); 2665Writer.Write("object[] p = new object["); 2666Writer.Write(mappings.Length.ToString(CultureInfo.InvariantCulture)); 2667Writer.WriteLine("];"); 2676Writer.Write("if (!"); 2678Writer.WriteLine(") throw CreateUnknownNodeException();"); 2680Writer.WriteLine("bool isEmptyWrapper = Reader.IsEmptyElement;"); 2681Writer.WriteLine("Reader.ReadStartElement();"); 2716if (members.Length > 0 && members[0].Mapping.IsReturnValue) Writer.WriteLine("IsReturnValue = true;"); 2724Writer.Indent++; 2728Writer.WriteLine("Reader.MoveToContent();"); 2733Writer.WriteLine("if (!isEmptyWrapper) ReadEndElement();"); 2738Writer.WriteLine("ReadReferencedElements();"); 2739Writer.WriteLine("return p;"); 2741Writer.Indent--; 2742Writer.WriteLine("}"); 2759Writer.Write(item); 2760Writer.Write(" "); 2761Writer.Write("ci ="); 2762Writer.Write($"({item})"); 2763Writer.Write(source); 2764Writer.WriteLine(";"); 2766Writer.WriteLine("for (int i = 0; i < ci.Length; i++) {"); 2767Writer.Indent++; 2768Writer.Write(RaCodeGen.GetStringForMethod("c", td.CSharpName, "Add", useReflection)); 2773Writer.Write("ci[i]"); 2775Writer.Write($"{RaCodeGen.GetReflectionVariable(typeof(Array).FullName!, "0")}[ci , i]"); 2778if (useReflection) Writer.WriteLine("}"); 2779Writer.WriteLine(");"); 2780Writer.Indent--; 2781Writer.WriteLine("}"); 2789Writer.WriteLine(); 2790Writer.Write("public object "); 2791Writer.Write(methodName); 2792Writer.WriteLine("() {"); 2793Writer.Indent++; 2794Writer.WriteLine("object o = null;"); 2800Writer.WriteLine("Reader.MoveToContent();"); 2805Writer.WriteLine("Referenced(o);"); 2806Writer.WriteLine("ReadReferencedElements();"); 2808Writer.WriteLine("return (object)o;"); 2809Writer.Indent--; 2810Writer.WriteLine("}"); 2829Writer.Write("("); 2830Writer.Write(mapping.TypeDesc!.CSharpName); 2831Writer.Write(")"); 2833Writer.Write(enumMethodName); 2834Writer.Write("("); 2835if (!mapping.IsSoap) Writer.Write(source); 2836Writer.Write(")"); 2840Writer.Write(source); 2846Writer.Write("CollapseWhitespace("); 2847Writer.Write(source); 2848Writer.Write(")"); 2852Writer.Write(source); 2859Writer.Write(typeof(XmlConvert).FullName); 2860Writer.Write("."); 2862Writer.Write("To"); 2863Writer.Write(mapping.TypeDesc.FormatterName); 2864Writer.Write("("); 2865Writer.Write(source); 2866Writer.Write(")"); 2901Writer.WriteLine(); 2902Writer.Write(typeof(Hashtable).FullName); 2903Writer.Write(" "); 2904Writer.Write(memberName); 2905Writer.WriteLine(";"); 2906Writer.WriteLine(); 2908Writer.Write("internal "); 2909Writer.Write(typeof(Hashtable).FullName); 2910Writer.Write(" "); 2911Writer.Write(propName); 2912Writer.WriteLine(" {"); 2913Writer.Indent++; 2915Writer.WriteLine("get {"); 2916Writer.Indent++; 2918Writer.Write("if ((object)"); 2919Writer.Write(memberName); 2920Writer.WriteLine(" == null) {"); 2921Writer.Indent++; 2923Writer.Write(typeof(Hashtable).FullName); 2924Writer.Write(" h = new "); 2925Writer.Write(typeof(Hashtable).FullName); 2926Writer.WriteLine("();"); 2932Writer.Write("h.Add("); 2936Writer.Write(", (long)"); 2937Writer.Write(mapping.TypeDesc.CSharpName); 2938Writer.Write(".@"); 2940Writer.Write(constants[i].Name); 2944Writer.Write(", "); 2945Writer.Write(string.Create(CultureInfo.InvariantCulture, $"{constants[i].Value}L")); 2948Writer.WriteLine(");"); 2951Writer.Write(memberName); 2952Writer.WriteLine(" = h;"); 2954Writer.Indent--; 2955Writer.WriteLine("}"); 2957Writer.Write("return "); 2958Writer.Write(memberName); 2959Writer.WriteLine(";"); 2961Writer.Indent--; 2962Writer.WriteLine("}"); 2964Writer.Indent--; 2965Writer.WriteLine("}"); 2977Writer.WriteLine(); 2983Writer.Write("object"); 2984Writer.Write(" "); 2985Writer.Write(methodName); 2986Writer.WriteLine("() {"); 2987Writer.Indent++; 2988Writer.WriteLine("string s = Reader.ReadElementString();"); 2992Writer.Write(useReflection ? "object" : fullTypeName); 2993Writer.Write(" "); 2994Writer.Write(methodName); 2995Writer.WriteLine("(string s) {"); 2996Writer.Indent++; 3004Writer.Write("return "); 3005Writer.Write(typeof(Enum).FullName); 3006Writer.Write(".ToObject("); 3007Writer.Write(RaCodeGen.GetStringForTypeof(fullTypeName, useReflection)); 3008Writer.Write(", ToEnum(s, "); 3009Writer.Write(tableName); 3010Writer.Write(", "); 3012Writer.WriteLine("));"); 3016Writer.Write("return ("); 3017Writer.Write(fullTypeName); 3018Writer.Write(")ToEnum(s, "); 3019Writer.Write(tableName); 3020Writer.Write(", "); 3022Writer.WriteLine(");"); 3027Writer.WriteLine("switch (s) {"); 3028Writer.Indent++; 3037Writer.Write("case "); 3039Writer.Write(": return "); 3040Writer.Write(RaCodeGen.GetStringForEnumMember(fullTypeName, c.Name, useReflection)); 3041Writer.WriteLine(";"); 3046Writer.Write("default: throw CreateUnknownConstantException(s, "); 3047Writer.Write(RaCodeGen.GetStringForTypeof(fullTypeName, useReflection)); 3048Writer.WriteLine(");"); 3049Writer.Indent--; 3050Writer.WriteLine("}"); 3053Writer.Indent--; 3054Writer.WriteLine("}"); 3061Writer.Write("if ("); 3063Writer.WriteLine(")"); 3064Writer.Indent++; 3072Writer.Write("return "); 3074Writer.Write($"({returnTypeName})"); 3075Writer.Write(methodName); 3076Writer.Write("("); 3078Writer.Write("isNullable, "); 3079Writer.WriteLine("false);"); 3081Writer.Indent--; 3098Writer.Write("if ("); 3100Writer.WriteLine(") {"); 3101Writer.Indent++; 3102Writer.WriteLine("Reader.ReadStartElement();"); 3108Writer.Write("object e = "); 3109Writer.Write(methodName); 3110Writer.WriteLine("(CollapseWhitespace(Reader.ReadString()));"); 3111Writer.WriteLine("ReadEndElement();"); 3112Writer.WriteLine("return e;"); 3113Writer.Indent--; 3114Writer.WriteLine("}"); 3120Writer.Write("if ("); 3122Writer.WriteLine(") {"); 3123Writer.Indent++; 3134Writer.Write(typeof(Array).FullName); 3136Writer.Write("object"); 3139Writer.Write(fullTypeName); 3140Writer.Write(" a = "); 3143Writer.Write(RaCodeGen.GetStringForCreateInstance(fullTypeName, td.UseReflection, false, false)); 3144Writer.WriteLine(";"); 3147Writer.WriteLine("null;"); 3150Writer.WriteLine("return a;"); 3151Writer.Indent--; 3152Writer.WriteLine("}"); 3164Writer.WriteLine(); 3166Writer.Write(typeName); 3167Writer.Write(" "); 3168Writer.Write(methodName); 3169Writer.WriteLine("(bool checkType) {"); 3170Writer.Indent++; 3172Writer.Write(typeName); 3173Writer.Write(" o = "); 3177Writer.Write("null"); 3181Writer.Write("default("); 3182Writer.Write(typeName); 3183Writer.Write(")"); 3185Writer.WriteLine(";"); 3187Writer.WriteLine("if (ReadNull())"); 3188Writer.Indent++; 3190Writer.WriteLine("return o;"); 3191Writer.Indent--; 3199Writer.WriteLine("return o;"); 3201Writer.Indent--; 3202Writer.WriteLine("}"); 3218Writer.WriteLine(); 3219Writer.Write(typeName); 3220Writer.Write(" "); 3221Writer.Write(methodName); 3222Writer.Write("("); 3224Writer.Write("bool isNullable, "); 3225Writer.WriteLine("bool checkType) {"); 3226Writer.Indent++; 3228Writer.Write(typeof(XmlQualifiedName).FullName); 3229Writer.WriteLine(" xsiType = checkType ? GetXsiType() : null;"); 3230Writer.WriteLine("bool isNull = false;"); 3232Writer.WriteLine("if (isNullable) isNull = ReadNull();"); 3234Writer.WriteLine("if (checkType) {"); 3237Writer.Indent++; 3238Writer.WriteLine("if (isNull) {"); 3239Writer.Indent++; 3240Writer.WriteLine($"if (xsiType != null) return ({typeName})ReadTypedNull(xsiType);"); 3241Writer.Write("else return "); 3244Writer.Write(RaCodeGen.GetStringForCreateInstance(structMapping.TypeDesc.CSharpName, useReflection, false, false)); 3245Writer.WriteLine(";"); 3248Writer.WriteLine("null;"); 3250Writer.Indent--; 3251Writer.WriteLine("}"); 3253Writer.Write("if (xsiType == null"); 3256Writer.Write(" || "); 3259Writer.WriteLine(") {"); 3262Writer.Indent++; 3263Writer.WriteLine($"return ReadTypedPrimitive(new System.Xml.XmlQualifiedName(\"{Soap.UrType}\", \"{XmlSchema.Namespace}\"));"); 3264Writer.Indent--; 3266Writer.WriteLine("}"); 3267Writer.WriteLine("else {"); 3268Writer.Indent++; 3272Writer.Write("return ReadTypedPrimitive(("); 3274Writer.Write("throw CreateUnknownTypeException(("); 3275Writer.Write(typeof(XmlQualifiedName).FullName); 3276Writer.WriteLine(")xsiType);"); 3277Writer.Indent--; 3278Writer.WriteLine("}"); 3280Writer.Indent--; 3281Writer.WriteLine("}"); 3283Writer.WriteLine("if (isNull) return null;"); 3287Writer.Write("throw CreateAbstractTypeException("); 3289Writer.Write(", "); 3291Writer.WriteLine(");"); 3297Writer.WriteLine("DecodeName = false;"); 3387Writer.WriteLine("Reader.MoveToElement();"); 3389Writer.WriteLine("if (Reader.IsEmptyElement) {"); 3390Writer.Indent++; 3391Writer.WriteLine("Reader.Skip();"); 3393Writer.WriteLine("return o;"); 3394Writer.Indent--; 3395Writer.WriteLine("}"); 3397Writer.WriteLine("Reader.ReadStartElement();"); 3400Writer.WriteLine("int state = 0;"); 3403Writer.Indent++; 3406Writer.WriteLine("Reader.MoveToContent();"); 3411Writer.WriteLine("ReadEndElement();"); 3412Writer.WriteLine("return o;"); 3414Writer.Indent--; 3415Writer.WriteLine("}"); 3423Writer.WriteLine(); 3424Writer.Write("object"); 3425Writer.Write(" "); 3426Writer.Write(methodName); 3427Writer.Write("("); 3428Writer.WriteLine(") {"); 3429Writer.Indent++; 3437Writer.Write("throw CreateAbstractTypeException("); 3439Writer.Write(", "); 3441Writer.WriteLine(");"); 3472Writer.WriteLine("Reader.MoveToElement();"); 3474Writer.WriteLine("if (Reader.IsEmptyElement) { Reader.Skip(); return o; }"); 3475Writer.WriteLine("Reader.ReadStartElement();"); 3478Writer.Indent++; 3481Writer.WriteLine("Reader.MoveToContent();"); 3485Writer.WriteLine("ReadEndElement();"); 3486Writer.WriteLine("return o;"); 3488Writer.Indent--; 3489Writer.WriteLine("}"); 3496Writer.WriteLine(); 3497Writer.Write("void "); 3498Writer.Write(fixupMethodName); 3499Writer.WriteLine("(object objFixup) {"); 3500Writer.Indent++; 3501Writer.WriteLine("Fixup fixup = (Fixup)objFixup;"); 3503Writer.WriteLine("string[] ids = fixup.Ids;"); 3511Writer.Write("if (ids["); 3512Writer.Write(fixupIndex); 3513Writer.WriteLine("] != null) {"); 3514Writer.Indent++; 3528Writer.WriteLine("try {"); 3529Writer.Indent++; 3535Writer.Write(targetSource); 3537Writer.WriteLine(";"); 3541Writer.Write(member.CheckSpecifiedSource); 3542Writer.WriteLine(" = true;"); 3550Writer.Indent--; 3551Writer.WriteLine("}"); 3554Writer.Indent--; 3555Writer.WriteLine("}"); 3560Writer.WriteLine("// get array of the collection items"); 3569Writer.Write("if ((object)("); 3570Writer.Write(memberSource); 3571Writer.WriteLine(") == null) {"); 3572Writer.Indent++; 3576Writer.Write("throw CreateReadOnlyCollectionException("); 3578Writer.WriteLine(");"); 3582Writer.Write(memberSource); 3583Writer.Write(" = "); 3584Writer.Write(RaCodeGen.GetStringForCreateInstance(typeDesc.CSharpName, typeDesc.UseReflection, typeDesc.CannotNew, true)); 3585Writer.WriteLine(";"); 3588Writer.Indent--; 3589Writer.WriteLine("}"); 3591Writer.Write("CollectionFixup collectionFixup = new CollectionFixup("); 3592Writer.Write(memberSource); 3593Writer.Write(", "); 3594Writer.Write("new "); 3595Writer.Write(typeof(XmlSerializationCollectionFixupCallback).FullName); 3596Writer.Write("(this."); 3597Writer.Write(create.Name); 3598Writer.Write("), "); 3599Writer.Write(targetSource); 3600Writer.WriteLine(");"); 3601Writer.WriteLine("AddFixup(collectionFixup);"); 3606Writer.Write("void "); 3607Writer.Write(c.Name); 3608Writer.WriteLine("(object collection, object collectionItems) {"); 3609Writer.Indent++; 3611Writer.WriteLine("if (collectionItems == null) return;"); 3612Writer.WriteLine("if (collection == null) return;"); 3621Writer.Indent--; 3622Writer.WriteLine("}"); 3627Writer.Write("((object) (("); 3628Writer.Write(typeof(XmlQualifiedName).FullName); 3629Writer.Write(")"); 3630Writer.Write(source); 3631Writer.Write(").Name == (object)"); 3633Writer.Write(" && (object) (("); 3634Writer.Write(typeof(XmlQualifiedName).FullName); 3635Writer.Write(")"); 3636Writer.Write(source); 3637Writer.Write(").Namespace == (object)"); 3639Writer.Write(")"); 3644Writer.Write("("); 3647Writer.Write("(object) "); 3648Writer.Write(source); 3649Writer.Write(".LocalName == (object)"); 3651Writer.Write(" && "); 3653Writer.Write("(object) "); 3654Writer.Write(source); 3655Writer.Write(".NamespaceURI == (object)"); 3657Writer.Write(")"); 3669Writer.Write(idName); 3678Writer.WriteLine("while (Reader.MoveToNextAttribute()) {"); 3679Writer.Indent++; 3699Writer.Write("else "); 3701Writer.Write("if ("); 3704Writer.Write("!"); 3705Writer.Write(member.ParamsReadSource); 3706Writer.Write(" && "); 3715Writer.WriteLine(") {"); 3716Writer.Indent++; 3719Writer.Indent--; 3720Writer.WriteLine("}"); 3724Writer.Write("else "); 3728Writer.WriteLine("if (IsXmlnsAttribute(Reader.Name)) {"); 3729Writer.Indent++; 3731Writer.Write("if ("); 3732Writer.Write(xmlnsMember.Source); 3733Writer.Write(" == null) "); 3734Writer.Write(xmlnsMember.Source); 3735Writer.Write(" = new "); 3736Writer.Write(xmlnsMember.Mapping.TypeDesc!.CSharpName); 3737Writer.WriteLine("();"); 3740Writer.Write($"(({xmlnsMember.Mapping.TypeDesc.CSharpName}){xmlnsMember.ArraySource})"); 3741Writer.WriteLine(".Add(Reader.Name.Length == 5 ? \"\" : Reader.LocalName, Reader.Value);"); 3743Writer.Indent--; 3744Writer.WriteLine("}"); 3746Writer.WriteLine("else {"); 3747Writer.Indent++; 3751Writer.WriteLine("if (!IsXmlnsAttribute(Reader.Name)) {"); 3752Writer.Indent++; 3756Writer.Write(typeof(XmlAttribute).FullName); 3757Writer.Write(" attr = "); 3758Writer.Write("("); 3759Writer.Write(typeof(XmlAttribute).FullName); 3760Writer.WriteLine(") Document.ReadNode(Reader);"); 3761Writer.WriteLine("ParseWsdlArrayType(attr);"); 3766Writer.Write(elseCall); 3767Writer.Write("("); 3768Writer.Write(firstParam); 3771Writer.Write(", "); 3783Writer.WriteLine(");"); 3785Writer.Indent--; 3786Writer.WriteLine("}"); 3788Writer.Indent--; 3789Writer.WriteLine("}"); 3801Writer.Write("attr"); 3803Writer.WriteLine(";"); 3807Writer.Write("if (attr is "); 3808Writer.Write(typeof(XmlAttribute).FullName); 3809Writer.WriteLine(") {"); 3810Writer.Indent++; 3812Writer.Write("("); 3813Writer.Write(typeof(XmlAttribute).FullName); 3814Writer.Write(")attr"); 3816Writer.WriteLine(";"); 3817Writer.Indent--; 3818Writer.WriteLine("}"); 3827Writer.WriteLine("string listValues = Reader.Value;"); 3828Writer.WriteLine("string[] vals = listValues.Split(null);"); 3829Writer.WriteLine("for (int i = 0; i < vals.Length; i++) {"); 3830Writer.Indent++; 3837Writer.WriteLine(";"); 3838Writer.Indent--; 3839Writer.WriteLine("}"); 3846Writer.WriteLine(";"); 3851Writer.Write(member.CheckSpecifiedSource); 3852Writer.WriteLine(" = true;"); 3856Writer.Write(member.ParamsReadSource); 3857Writer.WriteLine(" = true;"); 3880Writer.Write("Fixup fixup = new Fixup("); 3881Writer.Write(source); 3882Writer.Write(", "); 3883Writer.Write("new "); 3884Writer.Write(typeof(XmlSerializationFixupCallback).FullName); 3885Writer.Write("(this."); 3886Writer.Write(fixupMethodName); 3887Writer.Write("), "); 3888Writer.Write(fixupCount.ToString(CultureInfo.InvariantCulture)); 3889Writer.WriteLine(");"); 3890Writer.WriteLine("AddFixup(fixup);"); 3914Writer.Write("int "); 3915Writer.Write(c); 3916Writer.WriteLine(" = 0;"); 3923Writer.Write("int c"); 3924Writer.Write(member.ChoiceArrayName); 3925Writer.WriteLine(" = 0;"); 3934Writer.Write(member.Source); 3935Writer.Write(a); 3937Writer.WriteLine("});"); 3939Writer.WriteLine(");"); 3946Writer.Write("if ((object)("); 3947Writer.Write(member.Source); 3948Writer.Write(") == null) "); 3951Writer.Write("throw CreateReadOnlyCollectionException("); 3953Writer.WriteLine(");"); 3957Writer.Write(member.Source); 3958Writer.Write(" = "); 3959Writer.Write(RaCodeGen.GetStringForCreateInstance(typeDescFullName, useReflection, typeDesc.CannotNew, true)); 3960Writer.WriteLine(";"); 4011Writer.WriteLine("string tmp = null;"); 4014Writer.Write("if (Reader.NodeType == "); 4015Writer.Write(typeof(XmlNodeType).FullName); 4016Writer.WriteLine(".Element) {"); 4017Writer.Indent++; 4029Writer.Indent--; 4030Writer.WriteLine("}"); 4035Writer.WriteLine("else {"); 4036Writer.Indent++; 4037Writer.WriteLine(elseString); 4038Writer.Indent--; 4039Writer.WriteLine("}"); 4044Writer.Write("else if (Reader.NodeType == "); 4045Writer.Write(typeof(XmlNodeType).FullName); 4046Writer.WriteLine(".Text || "); 4047Writer.Write("Reader.NodeType == "); 4048Writer.Write(typeof(XmlNodeType).FullName); 4049Writer.WriteLine(".CDATA || "); 4050Writer.Write("Reader.NodeType == "); 4051Writer.Write(typeof(XmlNodeType).FullName); 4052Writer.WriteLine(".Whitespace || "); 4053Writer.Write("Reader.NodeType == "); 4054Writer.Write(typeof(XmlNodeType).FullName); 4055Writer.WriteLine(".SignificantWhitespace) {"); 4056Writer.Indent++; 4064Writer.Write(elseString); 4065Writer.WriteLine(";"); 4067Writer.Indent--; 4068Writer.WriteLine("}"); 4081Writer.Write("Document.CreateTextNode(Reader.ReadString())"); 4095Writer.Write("CollapseWhitespace(Reader.ReadString())"); 4099Writer.Write("Reader.ReadString()"); 4106Writer.Write("tmp = ReadString(tmp, "); 4108Writer.WriteLine("true);"); 4110Writer.WriteLine("false);"); 4113Writer.Write("tmp"); 4124Writer.WriteLine(";"); 4129Writer.WriteLine("string refElemId = null;"); 4130Writer.WriteLine("object refElem = ReadReferencingElement(null, null, true, out refElemId);"); 4132Writer.WriteLine("if (refElemId != null) {"); 4133Writer.Indent++; 4134Writer.Write(checkTypeHrefsSource); 4135Writer.WriteLine(".Add(refElemId);"); 4136Writer.Write(checkTypeHrefsSource); 4137Writer.WriteLine("IsObject.Add(false);"); 4138Writer.Indent--; 4139Writer.WriteLine("}"); 4140Writer.WriteLine("else if (refElem != null) {"); 4141Writer.Indent++; 4142Writer.Write(checkTypeHrefsSource); 4143Writer.WriteLine(".Add(refElem);"); 4144Writer.Write(checkTypeHrefsSource); 4145Writer.WriteLine("IsObject.Add(true);"); 4146Writer.Indent--; 4147Writer.WriteLine("}"); 4167Writer.WriteLine(elementElseString); 4189Writer.WriteLine("switch (state) {"); 4216Writer.WriteLine("do {"); 4217Writer.Indent++; 4224Writer.Write("else "); 4228Writer.Write("case "); 4229Writer.Write(cases.ToString(CultureInfo.InvariantCulture)); 4230Writer.WriteLine(":"); 4231Writer.Indent++; 4236Writer.Write("if ("); 4239Writer.Write("!"); 4240Writer.Write(member.ParamsReadSource); 4241Writer.Write(" && "); 4248Writer.Write(RaCodeGen.GetStringForTypeof(td.CSharpName, td.UseReflection)); 4252Writer.Write(RaCodeGen.GetStringForTypeof(e.Mapping!.TypeDesc!.CSharpName, e.Mapping.TypeDesc.UseReflection)); 4254Writer.Write(".IsAssignableFrom("); 4255Writer.Write(checkTypeSource); 4256Writer.Write("Type)"); 4261Writer.Write("(IsReturnValue || "); 4264Writer.Write("true"); 4271Writer.Write(")"); 4273Writer.WriteLine(") {"); 4274Writer.Indent++; 4279Writer.Write("if ("); 4280Writer.Write(checkTypeSource); 4281Writer.WriteLine(" != null) {"); 4282Writer.Indent++; 4288Writer.Write(RaCodeGen.GetStringForCreateInstance(e.Mapping.TypeDesc.CSharpName, e.Mapping.TypeDesc.UseReflection, false, true, $"({td.CSharpName}){checkTypeSource}")); 4293Writer.Write(checkTypeSource); 4296Writer.WriteLine(";"); 4299Writer.Indent--; 4300Writer.WriteLine("}"); 4304Writer.Write("fixup.Ids["); 4305Writer.Write(member.FixupIndex.ToString(CultureInfo.InvariantCulture)); 4306Writer.Write("] = "); 4307Writer.Write(checkTypeSource); 4308Writer.WriteLine("Id;"); 4316Writer.WriteLine("IsReturnValue = false;"); 4319Writer.Write(member.ParamsReadSource); 4320Writer.WriteLine(" = true;"); 4324Writer.WriteLine("break;"); 4326Writer.Indent--; 4327Writer.WriteLine("}"); 4333Writer.WriteLine("else {"); 4334Writer.Indent++; 4337Writer.Write("state = "); 4338Writer.Write(cases.ToString(CultureInfo.InvariantCulture)); 4339Writer.WriteLine(";"); 4342Writer.Indent--; 4343Writer.WriteLine("}"); 4345Writer.WriteLine("break;"); 4346Writer.Indent--; 4353Writer.WriteLine("default:"); 4354Writer.Indent++; 4362Writer.WriteLine("break;"); 4364Writer.Indent--; 4367Writer.WriteLine("} while (false);"); 4371Writer.WriteLine("}"); 4432Writer.Write(" soap[1] = "); 4440Writer.Write($"({arrayTypeFullName}[])"); 4441Writer.Write("ShrinkArray("); 4442Writer.Write(a); 4443Writer.Write(", "); 4444Writer.Write(c); 4445Writer.Write(", "); 4446Writer.Write(RaCodeGen.GetStringForTypeof(arrayTypeFullName, arrayUseReflection)); 4447Writer.Write(", "); 4449Writer.Write(")"); 4451Writer.WriteLine(";"); 4462Writer.Write($"({choiceTypeName}[])"); 4463Writer.Write("ShrinkArray("); 4464Writer.Write(a); 4465Writer.Write(", "); 4466Writer.Write(c); 4467Writer.Write(", "); 4468Writer.Write(RaCodeGen.GetStringForTypeof(choiceTypeName, choiceUseReflection)); 4469Writer.Write(", "); 4471Writer.Write(")"); 4473Writer.WriteLine(";"); 4478Writer.Write(member.Source); 4479Writer.Write(" = "); 4480Writer.Write(member.ArrayName); 4481Writer.WriteLine(";"); 4492Writer.Write("("); 4493Writer.Write(typeDesc.CSharpName); 4494Writer.Write(")"); 4500Writer.Write(source); 4502Writer.Write(" = "); 4510Writer.Write(")"); 4512Writer.Write("})"); 4519Writer.Write("object rre = "); 4520Writer.Write(fixupIndex >= 0 ? "ReadReferencingElement" : "ReadReferencedElement"); 4521Writer.Write("("); 4523Writer.Write(", "); 4527Writer.Write(", "); 4528Writer.Write("out fixup.Ids["); 4529Writer.Write((fixupIndex).ToString(CultureInfo.InvariantCulture)); 4530Writer.Write("]"); 4532Writer.WriteLine(");"); 4537Writer.WriteLine("if (rre != null) {"); 4538Writer.Indent++; 4540Writer.Indent--; 4541Writer.WriteLine("}"); 4545Writer.WriteLine("try {"); 4546Writer.Indent++; 4548Writer.Write("rre"); 4550Writer.WriteLine(";"); 4556Writer.WriteLine("if (!ReadNull()) {"); 4557Writer.Indent++; 4571Writer.Write("if (((object)("); 4572Writer.Write(member.ArrayName); 4573Writer.Write(") == null) || "); 4577Writer.Write("if ("); 4579Writer.WriteLine("(Reader.IsEmptyElement)) {"); 4580Writer.Indent++; 4581Writer.WriteLine("Reader.Skip();"); 4582Writer.Indent--; 4583Writer.WriteLine("}"); 4584Writer.WriteLine("else {"); 4585Writer.Indent++; 4587Writer.WriteLine("Reader.ReadStartElement();"); 4589Writer.Indent++; 4593Writer.WriteLine("Reader.MoveToContent();"); 4596Writer.Indent--; 4597Writer.WriteLine("ReadEndElement();"); 4598Writer.WriteLine("}"); 4602Writer.Indent--; 4603Writer.WriteLine("}"); 4606Writer.WriteLine("else {"); 4607Writer.Indent++; 4611Writer.Indent--; 4612Writer.WriteLine("}"); 4621Writer.Write(checkSpecified); 4622Writer.WriteLine(" = true;"); 4637Writer.Write(methodName); 4638Writer.Write("(true)"); 4640Writer.WriteLine(";"); 4646Writer.WriteLine("if (ReadNull()) {"); 4647Writer.Indent++; 4651Writer.Write(RaCodeGen.GetStringForCreateInstance(element.Mapping.TypeDesc.CSharpName, element.Mapping.TypeDesc.UseReflection, false, false)); 4655Writer.Write("null"); 4658Writer.WriteLine(";"); 4659Writer.Indent--; 4660Writer.WriteLine("}"); 4661Writer.Write("else "); 4665Writer.WriteLine("if (Reader.IsEmptyElement) {"); 4666Writer.Indent++; 4667Writer.WriteLine("Reader.Skip();"); 4668Writer.Indent--; 4669Writer.WriteLine("}"); 4670Writer.WriteLine("else {"); 4674Writer.WriteLine("{"); 4676Writer.Indent++; 4680Writer.WriteLine("if (Reader.IsEmptyElement) {"); 4681Writer.Indent++; 4682Writer.WriteLine("Reader.Skip();"); 4686Writer.Write("default(System.TimeSpan)"); 4690Writer.Write("default(System.DateTimeOffset)"); 4693Writer.WriteLine(";"); 4694Writer.Indent--; 4695Writer.WriteLine("}"); 4696Writer.WriteLine("else {"); 4697Writer.Indent++; 4701Writer.WriteLine(";"); 4702Writer.Indent--; 4703Writer.WriteLine("}"); 4709Writer.Write("ReadElementQualifiedName()"); 4727Writer.WriteLine(";"); 4729Writer.Indent--; 4730Writer.WriteLine("}"); 4737Writer.Write("object rre = "); 4738Writer.Write(fixupIndex >= 0 ? "ReadReferencingElement" : "ReadReferencedElement"); 4739Writer.Write("("); 4741Writer.Write(", "); 4746Writer.Write(", out fixup.Ids["); 4747Writer.Write((fixupIndex).ToString(CultureInfo.InvariantCulture)); 4748Writer.Write("]"); 4750Writer.Write(")"); 4752Writer.WriteLine(";"); 4756Writer.WriteLine("if (rre != null) {"); 4757Writer.Indent++; 4760Writer.WriteLine("try {"); 4761Writer.Indent++; 4763Writer.Write("rre"); 4765Writer.WriteLine(";"); 4767Writer.Write("Referenced("); 4768Writer.Write(source); 4769Writer.WriteLine(");"); 4772Writer.Indent--; 4773Writer.WriteLine("}"); 4786Writer.Write("if ((object)("); 4787Writer.Write(arrayName); 4788Writer.Write(") == null) Reader.Skip(); else "); 4791Writer.Write(methodName); 4792Writer.Write("("); 4796Writer.Write(", "); 4798Writer.Write("true"); 4799Writer.Write(")"); 4801Writer.WriteLine(";"); 4811Writer.Write(isDoc ? "ReadXmlDocument(" : "ReadXmlNode("); 4812Writer.Write(element.Any ? "false" : "true"); 4813Writer.Write(")"); 4815Writer.WriteLine(";"); 4822Writer.Write(typeof(XmlQualifiedName).FullName); 4823Writer.WriteLine(" tser = GetXsiType();"); 4824Writer.Write("if (tser == null"); 4825Writer.Write(" || "); 4828Writer.WriteLine(") {"); 4829Writer.Indent++; 4832Writer.Write("ReadSerializable(( "); 4833Writer.Write(typeof(IXmlSerializable).FullName); 4834Writer.Write(")"); 4837Writer.Write(RaCodeGen.GetStringForCreateInstance(sm.TypeDesc!.CSharpName, false, false, false, "\"default\"")); 4841Writer.Write(RaCodeGen.GetStringForCreateInstance(sm.TypeDesc!.CSharpName, sm.TypeDesc.UseReflection, sm.TypeDesc.CannotNew, false)); 4846Writer.WriteLine(", true"); 4848Writer.Write(")"); 4850Writer.WriteLine(";"); 4853Writer.Indent--; 4854Writer.WriteLine("}"); 4875Writer.Write(choiceSource); 4876Writer.Write(" = "); 4878Writer.Write(RaCodeGen.GetStringForEnumMember(enumTypeName, choice.MemberIds[elementIndex], choice.Mapping.TypeDesc.UseReflection)); 4879Writer.WriteLine(";"); 4889Writer.Write("else if (tser == null"); 4890Writer.Write(" || "); 4893Writer.WriteLine(") {"); 4894Writer.Indent++; 4901Writer.Write("ReadSerializable(( "); 4902Writer.Write(typeof(IXmlSerializable).FullName); 4903Writer.Write(")"); 4904Writer.Write(RaCodeGen.GetStringForCreateInstance(derived.TypeDesc!.CSharpName, derived.TypeDesc.UseReflection, derived.TypeDesc.CannotNew, false)); 4907Writer.WriteLine(", true"); 4909Writer.Write(")"); 4911Writer.WriteLine(";"); 4915Writer.Write("throw CreateBadDerivationException("); 4917Writer.Write(", "); 4919Writer.Write(", "); 4921Writer.Write(", "); 4923Writer.Write(", "); 4925Writer.Write(", "); 4927Writer.WriteLine(");"); 4932Writer.WriteLine($"// missing real mapping for {derived.XsiType}"); 4933Writer.Write("throw CreateMissingIXmlSerializableType("); 4935Writer.Write(", "); 4937Writer.Write(", "); 4939Writer.WriteLine(");"); 4942Writer.Indent--; 4943Writer.WriteLine("}"); 4951Writer.WriteLine("Reader.MoveToContent();"); 4952Writer.Write("while (Reader.NodeType != "); 4953Writer.Write(typeof(XmlNodeType).FullName); 4954Writer.Write(".EndElement && Reader.NodeType != "); 4955Writer.Write(typeof(XmlNodeType).FullName); 4956Writer.WriteLine(".None) {"); 4961Writer.Indent--; 4962Writer.WriteLine("}"); 4968Writer.Write(length <= StackallocLimit ? 4971Writer.Write(length.ToString(CultureInfo.InvariantCulture)); 4972Writer.WriteLine("];"); 4977Writer.WriteLine("Reader.MoveToContent();"); 4978Writer.Write("while (Reader.NodeType == "); 4979Writer.Write(typeof(XmlNodeType).FullName); 4980Writer.WriteLine(".Element) {"); 4981Writer.Indent++; 4982Writer.Write("string root = Reader.GetAttribute(\"root\", \""); 4983Writer.Write(Soap.Encoding); 4984Writer.WriteLine("\");"); 4985Writer.Write("if (root == null || "); 4986Writer.Write(typeof(XmlConvert).FullName); 4987Writer.WriteLine(".ToBoolean(root)) break;"); 4988Writer.WriteLine("ReadReferencedElement();"); 4989Writer.WriteLine("Reader.MoveToContent();"); 4995Writer.Write(value ? "true" : "false"); 5000Writer.Write(typeof(ArrayList).FullName); 5001Writer.Write(" "); 5002Writer.Write(source); 5003Writer.Write(" = new "); 5004Writer.Write(typeof(ArrayList).FullName); 5005Writer.WriteLine("();"); 5007Writer.Write(typeof(ArrayList).FullName); 5008Writer.Write(" "); 5009Writer.Write(source); 5010Writer.Write("IsObject = new "); 5011Writer.Write(typeof(ArrayList).FullName); 5012Writer.WriteLine("();"); 5017Writer.WriteLine("int isObjectIndex = 0;"); 5018Writer.Write("foreach (object obj in "); 5019Writer.Write(listSource); 5020Writer.WriteLine(") {"); 5021Writer.Indent++; 5022Writer.WriteLine("bool isReferenced = true;"); 5023Writer.Write("bool isObject = (bool)"); 5024Writer.Write(listSource); 5025Writer.WriteLine("IsObject[isObjectIndex++];"); 5026Writer.WriteLine("object refObj = isObject ? obj : GetTarget((string)obj);"); 5027Writer.WriteLine("if (refObj == null) continue;"); 5028Writer.Write(typeof(Type).FullName); 5029Writer.WriteLine(" refObjType = refObj.GetType();"); 5030Writer.WriteLine("string refObjId = null;"); 5034Writer.WriteLine("if (isObject && isReferenced) Referenced(refObj); // need to mark this obj as ref'd since we didn't do GetTarget"); 5035Writer.Indent--; 5036Writer.WriteLine("}"); 5041Writer.Write("if (Reader.GetAttribute(\"root\", \""); 5042Writer.Write(Soap.Encoding); 5043Writer.WriteLine("\") == \"0\") {"); 5044Writer.Indent++; 5045Writer.WriteLine(source); 5046Writer.Indent--; 5047Writer.WriteLine("}"); 5056Writer.Write(useReflection ? "object" : fullTypeName); 5057Writer.Write(" "); 5058Writer.Write(local); 5059Writer.WriteLine(";"); 5063Writer.WriteLine("try {"); 5064Writer.Indent++; 5066Writer.Write(local); 5067Writer.Write(" = "); 5068Writer.Write(RaCodeGen.GetStringForCreateInstance(fullTypeName, useReflection, mapping.TypeDesc.CannotNew, true)); 5069Writer.WriteLine(";"); 5073Writer.Indent++; 5074Writer.Write("throw CreateInaccessibleConstructorException("); 5076Writer.WriteLine(");"); 5079Writer.Indent++; 5081Writer.Write("throw CreateCtorHasSecurityException("); 5083Writer.WriteLine(");"); 5085Writer.Indent--; 5086Writer.WriteLine("}"); 5092Writer.Indent--; 5093Writer.WriteLine("}"); 5094Writer.Write("catch ("); 5095Writer.Write(exceptionType.FullName); 5096Writer.WriteLine(") {"); 5102Writer.Indent++; 5103Writer.Write("throw CreateInvalidCastException("); 5104Writer.Write(RaCodeGen.GetStringForTypeof(typeDesc.CSharpName, typeDesc.UseReflection)); 5105Writer.Write(", "); 5106Writer.Write(source); 5108Writer.WriteLine(", null);"); 5111Writer.Write(", (string)"); 5112Writer.Write(id); 5113Writer.WriteLine(");"); 5115Writer.Indent--; 5116Writer.WriteLine("}");
System\Xml\Serialization\XmlSerializationWriter.cs (729)
2250Writer.Write(Access); 2251Writer.Write(" class "); 2252Writer.Write(ClassName); 2253Writer.Write(" : "); 2254Writer.Write(typeof(System.Xml.Serialization.XmlSerializationWriter).FullName); 2255Writer.WriteLine(" {"); 2256Writer.Indent++; 2309Writer.Indent--; 2310Writer.WriteLine("}"); 2330Writer.WriteLine(); 2331Writer.WriteLine("protected override void InitCallbacks() {"); 2332Writer.Indent++; 2343Writer.Write("AddWriteCallback("); 2344Writer.Write(RaCodeGen.GetStringForTypeof(typeMapping.TypeDesc.CSharpName, typeMapping.TypeDesc.UseReflection)); 2345Writer.Write(", "); 2347Writer.Write(", "); 2349Writer.Write(", new "); 2350Writer.Write(typeof(System.Xml.Serialization.XmlSerializationWriteCallback).FullName); 2351Writer.Write("(this."); 2352Writer.Write(methodName); 2353Writer.WriteLine("));"); 2358Writer.Indent--; 2359Writer.WriteLine("}"); 2369Writer.WriteLine(" {"); 2370Writer.Indent++; 2373Writer.Write(nullable ? ("WriteNullableQualifiedName" + suffix) : "WriteElementQualifiedName"); 2374Writer.Write("("); 2378Writer.Write(", "); 2381Writer.Write(", "); 2382Writer.Write(source); 2386Writer.Write(", new System.Xml.XmlQualifiedName("); 2388Writer.Write(", "); 2390Writer.Write(")"); 2393Writer.WriteLine(");"); 2397Writer.Indent--; 2398Writer.WriteLine("}"); 2411Writer.Write(methodName); 2412Writer.Write("("); 2413Writer.Write(source); 2414Writer.Write(")"); 2421Writer.Write(source); 2427Writer.Write(typeof(XmlConvert).FullName); 2428Writer.Write(".ToString(("); 2429Writer.Write(typeDesc.CSharpName); 2430Writer.Write(")"); 2431Writer.Write(source); 2432Writer.Write(")"); 2436Writer.Write("From"); 2437Writer.Write(typeDesc.FormatterName); 2438Writer.Write("("); 2439Writer.Write(source); 2440Writer.Write(")"); 2459Writer.Write("if ("); 2461Writer.Write(ReflectionAwareCodeGen.GetStringForEnumLongValue(source, mapping.TypeDesc.UseReflection)); 2463Writer.Write(source); 2464Writer.Write(" != "); 2467Writer.Write("("); 2474Writer.WriteLine(" | "); 2475Writer.Write(RaCodeGen.GetStringForEnumCompare((EnumMapping)mapping, values[i], mapping.TypeDesc.UseReflection)); 2477Writer.Write(")"); 2481Writer.Write(RaCodeGen.GetStringForEnumCompare((EnumMapping)mapping, (string)defaultValue!, mapping.TypeDesc.UseReflection)); 2483Writer.Write(")"); 2489Writer.WriteLine(" {"); 2490Writer.Indent++; 2493Writer.Write(method); 2494Writer.Write("("); 2498Writer.Write(", "); 2502Writer.Write(", "); 2515Writer.Write(", new System.Xml.XmlQualifiedName("); 2517Writer.Write(", "); 2519Writer.Write(")"); 2522Writer.WriteLine(");"); 2526Writer.Indent--; 2527Writer.WriteLine("}"); 2533Writer.Write(methodName); 2534Writer.Write("("); 2536Writer.Write(", "); 2539Writer.Write("null"); 2545Writer.WriteLine(");"); 2550Writer.Write(methodName); 2551Writer.Write("("); 2553Writer.Write(", "); 2556Writer.Write("null"); 2562Writer.Write(", null, "); 2564Writer.Write("true"); 2566Writer.Write("false"); 2567Writer.WriteLine(");"); 2577Writer.WriteLine("WriteEndElement();"); 2581Writer.Write("WriteEndElement("); 2582Writer.Write(source); 2583Writer.WriteLine(");"); 2610Writer.WriteLine(); 2611Writer.Write("public void "); 2612Writer.Write(methodName); 2613Writer.WriteLine("(object[] p) {"); 2614Writer.Indent++; 2616Writer.WriteLine("WriteStartDocument();"); 2620Writer.WriteLine("TopLevelElement();"); 2626Writer.WriteLine("int pLength = p.Length;"); 2637Writer.Write("if (pLength > "); 2638Writer.Write(xmlnsMember.ToString(CultureInfo.InvariantCulture)); 2639Writer.WriteLine(") {"); 2640Writer.Indent++; 2642Writer.Indent--; 2643Writer.WriteLine("}"); 2671Writer.Write("if (pLength > "); 2672Writer.Write(index); 2673Writer.WriteLine(") {"); 2674Writer.Indent++; 2678Writer.Write("if (pLength <= "); 2679Writer.Write(specifiedPosition.ToString(CultureInfo.InvariantCulture)); 2680Writer.Write(" || "); 2681Writer.Write(specifiedSource); 2682Writer.WriteLine(") {"); 2683Writer.Indent++; 2690Writer.Indent--; 2691Writer.WriteLine("}"); 2694Writer.Indent--; 2695Writer.WriteLine("}"); 2726Writer.Write("if (pLength > "); 2727Writer.Write(index); 2728Writer.WriteLine(") {"); 2729Writer.Indent++; 2733Writer.Write("if (pLength <= "); 2734Writer.Write(specifiedPosition.ToString(CultureInfo.InvariantCulture)); 2735Writer.Write(" || "); 2736Writer.Write(specifiedSource); 2737Writer.WriteLine(") {"); 2738Writer.Indent++; 2765Writer.Write("WriteRpcResult("); 2767Writer.Write(", "); 2769Writer.WriteLine(");"); 2777Writer.Indent--; 2778Writer.WriteLine("}"); 2781Writer.Indent--; 2782Writer.WriteLine("}"); 2794Writer.Write("if (pLength > "); 2795Writer.Write(mapping.Members.Length.ToString(CultureInfo.InvariantCulture)); 2796Writer.WriteLine(") {"); 2797Writer.Indent++; 2801Writer.Indent--; 2802Writer.WriteLine("}"); 2804Writer.WriteLine("WriteReferencedElements();"); 2806Writer.Indent--; 2807Writer.WriteLine("}"); 2817Writer.WriteLine(); 2818Writer.Write("public void "); 2819Writer.Write(methodName); 2820Writer.WriteLine("(object o) {"); 2821Writer.Indent++; 2823Writer.WriteLine("WriteStartDocument();"); 2825Writer.WriteLine("if (o == null) {"); 2826Writer.Indent++; 2836Writer.WriteLine("return;"); 2837Writer.Indent--; 2838Writer.WriteLine("}"); 2842Writer.WriteLine("TopLevelElement();"); 2849Writer.WriteLine("WriteReferencedElements();"); 2851Writer.Indent--; 2852Writer.WriteLine("}"); 2864Writer.WriteLine(); 2868Writer.Write("void "); 2869Writer.Write(methodName); 2870Writer.WriteLine("(object e) {"); 2875Writer.Write("string "); 2876Writer.Write(methodName); 2877Writer.Write("("); 2878Writer.Write(mapping.TypeDesc.UseReflection ? "object" : fullTypeName); 2879Writer.WriteLine(" v) {"); 2881Writer.Indent++; 2882Writer.WriteLine("string s = null;"); 2889Writer.WriteLine($"switch ({ReflectionAwareCodeGen.GetStringForEnumLongValue("v", mapping.TypeDesc.UseReflection)} ){{"); 2891Writer.WriteLine("switch (v) {"); 2892Writer.Indent++; 2899Writer.Write("s = "); 2901Writer.WriteLine("; break;"); 2909Writer.Write("default: s = FromEnum("); 2910Writer.Write(ReflectionAwareCodeGen.GetStringForEnumLongValue("v", mapping.TypeDesc.UseReflection)); 2911Writer.Write(", new string[] {"); 2912Writer.Indent++; 2917Writer.WriteLine(", "); 2920Writer.Write("}, new "); 2921Writer.Write(typeof(long).FullName); 2922Writer.Write("[] {"); 2928Writer.WriteLine(", "); 2929Writer.Write("(long)"); 2931Writer.Write(c.Value.ToString(CultureInfo.InvariantCulture)); 2934Writer.Write(fullTypeName); 2935Writer.Write(".@"); 2937Writer.Write(c.Name); 2940Writer.Indent--; 2941Writer.Write("}, "); 2943Writer.WriteLine("); break;"); 2947Writer.Write("default: throw CreateInvalidEnumValueException("); 2948Writer.Write(ReflectionAwareCodeGen.GetStringForEnumLongValue("v", mapping.TypeDesc.UseReflection)); 2949Writer.Write(".ToString(System.Globalization.CultureInfo.InvariantCulture), "); 2951Writer.WriteLine(");"); 2953Writer.Indent--; 2954Writer.WriteLine("}"); 2958Writer.Write("WriteXsiType("); 2960Writer.Write(", "); 2962Writer.WriteLine(");"); 2963Writer.WriteLine("Writer.WriteString(s);"); 2967Writer.WriteLine("return s;"); 2969Writer.Indent--; 2970Writer.WriteLine("}"); 2978Writer.Write("if ("); 2980Writer.WriteLine(") {"); 2981Writer.Indent++; 2990Writer.Write(methodName); 2991Writer.Write("(n, ns,"); 2992if (!derived.TypeDesc.UseReflection) Writer.Write($"({fullTypeName})"); 2993Writer.Write("o"); 2995Writer.Write(", isNullable"); 2996Writer.Write(", true"); 2997Writer.WriteLine(");"); 2998Writer.WriteLine("return;"); 2999Writer.Indent--; 3000Writer.WriteLine("}"); 3017Writer.Write("if ("); 3019Writer.WriteLine(") {"); 3020Writer.Indent++; 3028Writer.WriteLine("Writer.WriteStartElement(n, ns);"); 3029Writer.Write("WriteXsiType("); 3031Writer.Write(", "); 3033Writer.WriteLine(");"); 3034Writer.Write("Writer.WriteString("); 3035Writer.Write(methodName); 3036Writer.Write("("); 3037if (!mapping.TypeDesc.UseReflection) Writer.Write($"({fullTypeName})"); 3038Writer.WriteLine("o));"); 3039Writer.WriteLine("Writer.WriteEndElement();"); 3040Writer.WriteLine("return;"); 3041Writer.Indent--; 3042Writer.WriteLine("}"); 3049Writer.Write("if ("); 3054Writer.WriteLine(") {"); 3055Writer.Indent++; 3057Writer.WriteLine("Writer.WriteStartElement(n, ns);"); 3058Writer.Write("WriteXsiType("); 3060Writer.Write(", "); 3062Writer.WriteLine(");"); 3066Writer.WriteLine("Writer.WriteEndElement();"); 3067Writer.WriteLine("return;"); 3068Writer.Indent--; 3069Writer.WriteLine("}"); 3081Writer.WriteLine(); 3082Writer.Write("void "); 3083Writer.Write(methodName); 3089Writer.WriteLine("(object s) {"); 3090Writer.Indent++; 3095Writer.Write("(string n, string ns, "); 3096Writer.Write(mapping.TypeDesc.UseReflection ? "object" : fullTypeName); 3097Writer.Write(" o"); 3099Writer.Write(", bool isNullable"); 3100Writer.WriteLine(", bool needType) {"); 3101Writer.Indent++; 3104Writer.WriteLine("if ((object)o == null) {"); 3105Writer.Indent++; 3106Writer.WriteLine("if (isNullable) WriteNullTagLiteral(n, ns);"); 3107Writer.WriteLine("return;"); 3108Writer.Indent--; 3109Writer.WriteLine("}"); 3111Writer.WriteLine("if (!needType) {"); 3112Writer.Indent++; 3114Writer.Write(typeof(Type).FullName); 3115Writer.WriteLine(" t = o.GetType();"); 3116Writer.Write("if ("); 3118Writer.WriteLine(") {"); 3119Writer.WriteLine("}"); 3120Writer.WriteLine("else {"); 3121Writer.Indent++; 3128Writer.WriteLine("WriteTypedPrimitive(n, ns, o, true);"); 3129Writer.WriteLine("return;"); 3133Writer.WriteLine("throw CreateUnknownTypeException(o);"); 3135Writer.Indent--; 3136Writer.WriteLine("}"); 3137Writer.Indent--; 3138Writer.WriteLine("}"); 3145Writer.WriteLine("EscapeName = false;"); 3164Writer.Write("WriteStartElement(n, ns, o, false, "); 3166Writer.Write("null"); 3168Writer.Write(xmlnsSource); 3170Writer.WriteLine(");"); 3173Writer.Write("if (needType) WriteXsiType("); 3175Writer.Write(", "); 3177Writer.WriteLine(");"); 3192Writer.Write("if ("); 3195Writer.Write(methodInvoke); 3196Writer.WriteLine(") {"); 3197Writer.Indent++; 3201Writer.Write("if ("); 3204Writer.Write(memberGet); 3205Writer.WriteLine(") {"); 3206Writer.Indent++; 3212Writer.Indent--; 3213Writer.WriteLine("}"); 3217Writer.Indent--; 3218Writer.WriteLine("}"); 3233Writer.Write("if ("); 3236Writer.Write(methodInvoke); 3237Writer.WriteLine(") {"); 3238Writer.Indent++; 3242Writer.Write("if ("); 3245Writer.Write(memberGet); 3246Writer.WriteLine(") {"); 3247Writer.Indent++; 3260Writer.Indent--; 3261Writer.WriteLine("}"); 3265Writer.Indent--; 3266Writer.WriteLine("}"); 3274Writer.Indent--; 3275Writer.WriteLine("}"); 3293Writer.WriteLine("{"); 3294Writer.Indent++; 3299Writer.WriteLine("if (a != null) {"); 3300Writer.Indent++; 3306Writer.Write("Writer.WriteStartAttribute(null, "); 3308Writer.Write(", "); 3316Writer.Write("null"); 3318Writer.WriteLine(");"); 3322Writer.Write(typeof(StringBuilder).FullName); 3323Writer.Write(" sb = new "); 3324Writer.Write(typeof(StringBuilder).FullName); 3325Writer.WriteLine("();"); 3332Writer.Write(" e = "); 3333Writer.Write(typeof(IEnumerator).FullName); 3336Writer.Write("(("); 3337Writer.Write(typeof(IEnumerable).FullName); 3338Writer.WriteLine(").GetEnumerator();"); 3345Writer.Write("("); 3346Writer.Write(typeof(IEnumerator).FullName); 3347Writer.Write(")"); 3348Writer.Write(RaCodeGen.GetReflectionVariable(memberTypeDesc.CSharpName, "System.Collections.Generic.IEnumerable*")); 3349Writer.WriteLine(".Invoke(a, new object[0]);"); 3353Writer.Write("((System.Collections.Generic.IEnumerable<"); 3354Writer.Write(arrayElementTypeDesc.CSharpName); 3355Writer.WriteLine(">)a).GetEnumerator();"); 3362Writer.Write("("); 3363Writer.Write(typeof(IEnumerator).FullName); 3364Writer.Write(")"); 3366Writer.Write(RaCodeGen.GetStringForMethodInvoke("a", memberTypeDesc.CSharpName, "GetEnumerator", memberTypeDesc.UseReflection)); 3367Writer.WriteLine(";"); 3369Writer.WriteLine("if (e != null)"); 3370Writer.WriteLine("while (e.MoveNext()) {"); 3371Writer.Indent++; 3378Writer.Write("for (int i = 0; i < "); 3381Writer.WriteLine("a.Length; i++) {"); 3385Writer.Write("(("); 3386Writer.Write(typeof(ICollection).FullName); 3387Writer.WriteLine(")a).Count; i++) {"); 3389Writer.Indent++; 3398Writer.WriteLine("if (i != 0) Writer.WriteString(\" \");"); 3399Writer.Write("WriteValue("); 3403Writer.WriteLine("if (i != 0) sb.Append(\" \");"); 3404Writer.Write("sb.Append("); 3410Writer.WriteLine(");"); 3416Writer.Indent--; 3417Writer.WriteLine("}"); 3423Writer.WriteLine("Writer.WriteEndAttribute();"); 3427Writer.WriteLine("if (sb.Length != 0) {"); 3428Writer.Indent++; 3430Writer.Write("WriteAttribute("); 3432Writer.Write(", "); 3437Writer.Write(", "); 3439Writer.WriteLine("sb.ToString());"); 3440Writer.Indent--; 3441Writer.WriteLine("}"); 3447Writer.Indent--; 3448Writer.WriteLine("}"); 3450Writer.Indent--; 3451Writer.WriteLine("}"); 3466Writer.Write("WriteXmlAttribute("); 3467Writer.Write(source); 3468Writer.Write(", "); 3469Writer.Write(parent); 3470Writer.WriteLine(");"); 3497Writer.WriteLine("{"); 3498Writer.Indent++; 3503Writer.WriteLine("if (a != null) {"); 3504Writer.Indent++; 3512Writer.WriteLine("if (c == null || c.Length < a.Length) {"); 3513Writer.Indent++; 3514Writer.Write("throw CreateInvalidChoiceIdentifierValueException("); 3516Writer.Write(", "); 3518Writer.Write(");"); 3519Writer.Indent--; 3520Writer.WriteLine("}"); 3526Writer.Indent--; 3527Writer.WriteLine("}"); 3529Writer.Indent--; 3530Writer.WriteLine("}"); 3540Writer.Write(typeof(IEnumerator).FullName); 3541Writer.Write(" e = "); 3544Writer.Write("(("); 3545Writer.Write(typeof(IEnumerable).FullName); 3546Writer.Write(")"); 3547Writer.Write(arrayName); 3548Writer.WriteLine(").GetEnumerator();"); 3555Writer.Write("("); 3556Writer.Write(typeof(IEnumerator).FullName); 3557Writer.Write(")"); 3558Writer.Write(RaCodeGen.GetReflectionVariable(arrayTypeDesc.CSharpName, "System.Collections.Generic.IEnumerable*")); 3559Writer.Write(".Invoke("); 3560Writer.Write(arrayName); 3561Writer.WriteLine(", new object[0]);"); 3565Writer.Write("((System.Collections.Generic.IEnumerable<"); 3566Writer.Write(arrayElementTypeDesc.CSharpName); 3567Writer.Write(">)"); 3568Writer.Write(arrayName); 3569Writer.WriteLine(").GetEnumerator();"); 3576Writer.Write("("); 3577Writer.Write(typeof(IEnumerator).FullName); 3578Writer.Write(")"); 3580Writer.Write(RaCodeGen.GetStringForMethodInvoke(arrayName, arrayTypeDesc.CSharpName, "GetEnumerator", arrayTypeDesc.UseReflection)); 3581Writer.WriteLine(";"); 3583Writer.WriteLine("if (e != null)"); 3584Writer.WriteLine("while (e.MoveNext()) {"); 3585Writer.Indent++; 3592Writer.Write("for (int i"); 3593Writer.Write(arrayName); 3594Writer.Write(" = 0; i"); 3595Writer.Write(arrayName); 3596Writer.Write(" < "); 3599Writer.Write(arrayName); 3600Writer.Write(".Length"); 3604Writer.Write("(("); 3605Writer.Write(typeof(ICollection).FullName); 3606Writer.Write(")"); 3607Writer.Write(arrayName); 3608Writer.Write(").Count"); 3610Writer.Write("; i"); 3611Writer.Write(arrayName); 3612Writer.WriteLine("++) {"); 3613Writer.Indent++; 3631Writer.Indent--; 3632Writer.WriteLine("}"); 3656Writer.Write("if ((object)("); 3657Writer.Write(source); 3658Writer.Write(") != null)"); 3660Writer.WriteLine("{"); 3661Writer.Indent++; 3691if (wroteFirstIf) Writer.Write("else "); 3693Writer.Write("if ("); 3694Writer.Write(enumUseReflection ? ReflectionAwareCodeGen.GetStringForEnumLongValue(enumSource!, enumUseReflection) : enumSource); 3695Writer.Write(" == "); 3696Writer.Write(enumFullName); 3699Writer.Write(" && ((object)("); 3700Writer.Write(source); 3701Writer.Write(") != null)"); 3703Writer.WriteLine(") {"); 3704Writer.Indent++; 3712Writer.Indent--; 3713Writer.WriteLine("}"); 3720if (wroteFirstIf) Writer.Write("else "); 3722Writer.Write("if ("); 3724Writer.WriteLine(") {"); 3725Writer.Indent++; 3730Writer.Indent--; 3731Writer.WriteLine("}"); 3736if (elements.Length - anyCount > 0) Writer.Write("else "); 3740Writer.Write("if ("); 3741Writer.Write(source); 3742Writer.Write(" is "); 3743Writer.Write(fullTypeName); 3744Writer.WriteLine(") {"); 3745Writer.Indent++; 3747Writer.Write(fullTypeName); 3748Writer.Write(" elem = ("); 3749Writer.Write(fullTypeName); 3750Writer.Write(")"); 3751Writer.Write(source); 3752Writer.WriteLine(";"); 3758if (c++ > 0) Writer.Write("else "); 3766Writer.Write("if ("); 3767Writer.Write(enumUseReflection ? ReflectionAwareCodeGen.GetStringForEnumLongValue(enumSource!, enumUseReflection) : enumSource); 3768Writer.Write(" == "); 3769Writer.Write(enumFullName); 3772Writer.Write(" && ((object)("); 3773Writer.Write(source); 3774Writer.Write(") != null)"); 3776Writer.WriteLine(") {"); 3777Writer.Indent++; 3779Writer.Write("if (elem.Name == "); 3781Writer.Write(" && elem.NamespaceURI == "); 3783Writer.WriteLine(") {"); 3784Writer.Indent++; 3789Writer.Indent--; 3790Writer.WriteLine("}"); 3791Writer.WriteLine("else {"); 3792Writer.Indent++; 3794Writer.WriteLine("// throw Value '{0}' of the choice identifier '{1}' does not match element '{2}' from namespace '{3}'."); 3796Writer.Write("throw CreateChoiceIdentifierValueException("); 3798Writer.Write(", "); 3800Writer.WriteLine(", elem.Name, elem.NamespaceURI);"); 3801Writer.Indent--; 3802Writer.WriteLine("}"); 3804Writer.Indent--; 3805Writer.WriteLine("}"); 3809Writer.WriteLine("else {"); 3810Writer.Indent++; 3818Writer.WriteLine("throw CreateUnknownAnyElementException(elem.Name, elem.NamespaceURI);"); 3822Writer.Indent--; 3823Writer.WriteLine("}"); 3825Writer.Indent--; 3826Writer.WriteLine("}"); 3834Writer.Write("else "); 3835Writer.Write("if ("); 3837Writer.WriteLine(") {"); 3838Writer.Indent++; 3843Writer.Indent--; 3844Writer.WriteLine("}"); 3856Writer.Write("else "); 3860Writer.Write(" if ((object)("); 3861Writer.Write(source); 3862Writer.Write(") != null)"); 3865Writer.WriteLine("{"); 3866Writer.Indent++; 3868Writer.Write("throw CreateUnknownTypeException("); 3869Writer.Write(source); 3870Writer.WriteLine(");"); 3872Writer.Indent--; 3873Writer.WriteLine("}"); 3875Writer.Indent--; 3876Writer.WriteLine("}"); 3884Writer.Write("WriteValue("); 3893Writer.WriteLine(");"); 3900Writer.Write(source); 3901Writer.WriteLine(".WriteTo(Writer);"); 3916Writer.Write("if ("); 3917Writer.Write(source); 3918Writer.WriteLine(" != null) {"); 3919Writer.Indent++; 3927Writer.Indent--; 3928Writer.WriteLine("}"); 3931Writer.WriteLine("else {"); 3932Writer.Indent++; 3934Writer.Indent--; 3935Writer.WriteLine("}"); 3942Writer.Write("WritePotentiallyReferencingElement("); 3944Writer.Write(", "); 3946Writer.Write(", "); 3947Writer.Write(source); 3950Writer.Write(", "); 3951Writer.Write(RaCodeGen.GetStringForTypeof(arrayMapping.TypeDesc!.CSharpName, arrayMapping.TypeDesc.UseReflection)); 3952Writer.Write(", true, "); 3956Writer.Write(", null, false, "); 3959Writer.WriteLine(");"); 3967Writer.WriteLine("{"); 3968Writer.Indent++; 3978Writer.Write("if ("); 3979Writer.Write(elementArrayName); 3980Writer.Write(" != null)"); 3982Writer.WriteLine("{"); 3983Writer.Indent++; 3986Writer.Write("for (int "); 3987Writer.Write(arrayIndex); 3988Writer.Write(" = 0; "); 3989Writer.Write(arrayIndex); 3990Writer.Write(" < "); 3994Writer.Write(elementArrayName); 3995Writer.Write(".Length"); 3999Writer.Write("(("); 4000Writer.Write(typeof(ICollection).FullName); 4001Writer.Write(")"); 4002Writer.Write(elementArrayName); 4003Writer.Write(").Count"); 4005Writer.Write("; "); 4006Writer.Write(arrayIndex); 4007Writer.WriteLine("++) {"); 4008Writer.Indent++; 4014Writer.Indent--; 4015Writer.WriteLine("}"); 4017Writer.Indent--; 4018Writer.WriteLine("}"); 4019Writer.Indent--; 4020Writer.WriteLine("}"); 4025Writer.WriteLine("{"); 4026Writer.Indent++; 4036Writer.Write("if ("); 4037Writer.Write(arrayName); 4038Writer.Write(" != null)"); 4040Writer.WriteLine("{"); 4041Writer.Indent++; 4046Writer.Indent--; 4047Writer.WriteLine("}"); 4048Writer.Indent--; 4049Writer.WriteLine("}"); 4057Writer.Write("Writer.WriteStartElement("); 4059Writer.Write(", "); 4061Writer.WriteLine(");"); 4062Writer.Write(methodName); 4063Writer.Write("("); 4064Writer.Write(source); 4065Writer.WriteLine(");"); 4089Writer.Write("WritePotentiallyReferencingElement("); 4091Writer.Write(", "); 4093Writer.Write(", "); 4094Writer.Write(source); 4097Writer.Write(", "); 4098Writer.Write(RaCodeGen.GetStringForTypeof(structMapping.TypeDesc!.CSharpName, structMapping.TypeDesc.UseReflection)); 4099Writer.Write(", true, "); 4103Writer.Write(", null, false, "); 4115Writer.Write(methodName); 4116Writer.Write("("); 4118Writer.Write(", "); 4120Writer.Write("null"); 4125Writer.Write(", "); 4126Writer.Write(source); 4129Writer.Write(", "); 4132Writer.Write(", false"); 4134Writer.WriteLine(");"); 4145Writer.Write("if (("); 4146Writer.Write(source); 4147Writer.Write(") is "); 4148Writer.Write(typeof(XmlNode).FullName); 4149Writer.Write(" || "); 4150Writer.Write(source); 4151Writer.Write(" == null"); 4152Writer.WriteLine(") {"); 4153Writer.Indent++; 4157Writer.Indent--; 4158Writer.WriteLine("}"); 4159Writer.WriteLine("else {"); 4160Writer.Indent++; 4162Writer.Write("throw CreateInvalidAnyTypeException("); 4163Writer.Write(source); 4164Writer.WriteLine(");"); 4166Writer.Indent--; 4167Writer.WriteLine("}"); 4178Writer.Write(func); 4179Writer.Write("(("); 4180Writer.Write(cast.FullName); 4181Writer.Write(")"); 4182Writer.Write(source); 4183Writer.Write(", "); 4185Writer.Write(", "); 4187Writer.Write(", "); 4189Writer.Write(", "); 4191Writer.WriteLine(");"); 4197Writer.Write("if ("); 4202Writer.Write("("); 4203Writer.Write(source); 4205Writer.Write(" == null) || ("); 4207Writer.Write(" != null) && ("); 4208Writer.Write(source); 4209Writer.Write(".Length != 0)"); 4213Writer.Write("!"); 4214Writer.Write(source); 4215Writer.Write(".Equals("); 4218Writer.Write(")"); 4222Writer.Write(source); 4223Writer.Write(" != "); 4227Writer.Write(")"); 4232Writer.Write("if (((object)"); 4233Writer.Write(source); 4234Writer.Write(") != null && !("); 4236Writer.Write(")) throw CreateMismatchChoiceException("); 4238Writer.Write(", "); 4240Writer.Write(", "); 4242Writer.WriteLine(");"); 4247Writer.Write("if ((object)("); 4248Writer.Write(source); 4249Writer.WriteLine(") == null) {"); 4250Writer.Indent++; 4252Writer.Indent--; 4253Writer.WriteLine("}"); 4254Writer.WriteLine("else {"); 4255Writer.Indent++; 4262Writer.Write("null"); 4275Writer.Write('\''); 4278Writer.Write("\'"); 4280Writer.Write(ch); 4281Writer.Write('\''); 4284Writer.Write(((int)value).ToString(null, NumberFormatInfo.InvariantInfo)); 4289Writer.Write("System.Double.NaN"); 4293Writer.Write("System.Double.PositiveInfinity"); 4297Writer.Write("System.Double.NegativeInfinity"); 4301Writer.Write(((double)value).ToString("R", NumberFormatInfo.InvariantInfo)); 4305Writer.Write((bool)value ? "true" : "false"); 4308Writer.Write("("); 4309Writer.Write(type.FullName); 4310Writer.Write(")"); 4311Writer.Write("("); 4312Writer.Write(Convert.ToString(value, NumberFormatInfo.InvariantInfo)); 4313Writer.Write(")"); 4319Writer.Write("System.Single.NaN"); 4323Writer.Write("System.Single.PositiveInfinity"); 4327Writer.Write("System.Single.NegativeInfinity"); 4331Writer.Write(((float)value).ToString("R", NumberFormatInfo.InvariantInfo)); 4332Writer.Write("f"); 4337Writer.Write(((decimal)value).ToString(null, NumberFormatInfo.InvariantInfo)); 4338Writer.Write("m"); 4342Writer.Write(" new "); 4343Writer.Write(type.FullName); 4344Writer.Write("("); 4345Writer.Write(((DateTime)value).Ticks.ToString(CultureInfo.InvariantCulture)); 4346Writer.Write(")"); 4350Writer.Write(" new "); 4351Writer.Write(type.FullName); 4352Writer.Write("("); 4353Writer.Write(((DateTimeOffset)value).Ticks.ToString(CultureInfo.InvariantCulture)); 4354Writer.Write(", new "); 4355Writer.Write(((DateTimeOffset)value).Offset.GetType().FullName); 4356Writer.Write("("); 4357Writer.Write(((DateTimeOffset)value).Offset.Ticks.ToString(CultureInfo.InvariantCulture)); 4358Writer.Write("))"); 4362Writer.Write(" new "); 4363Writer.Write(type.FullName); 4364Writer.Write("("); 4365Writer.Write(((TimeSpan)value).Ticks.ToString(CultureInfo.InvariantCulture)); 4366Writer.Write(")"); 4372Writer.Write(((int)value).ToString(null, NumberFormatInfo.InvariantInfo)); 4385Writer.Write("WriteNamespaceDeclarations("); 4386Writer.Write(source); 4387Writer.WriteLine(");"); 4403Writer.Write("for (int i = "); 4404Writer.Write(loopStartSource); 4405Writer.Write("; i < "); 4406Writer.Write(loopEndSource); 4407Writer.WriteLine("; i++) {"); 4408Writer.Indent++; 4409Writer.WriteLine("if (p[i] != null) {"); 4410Writer.Indent++; 4411Writer.WriteLine("WritePotentiallyReferencingElement(null, null, p[i], p[i].GetType(), true, false);"); 4412Writer.Indent--; 4413Writer.WriteLine("}"); 4414Writer.Indent--; 4415Writer.WriteLine("}");