1685 references to Writer
System.Private.Xml (1685)
System\Xml\Serialization\XmlSerializationReader.cs (942)
2280Writer.Write(Access); 2281Writer.Write(" class "); 2282Writer.Write(ClassName); 2283Writer.Write(" : "); 2284Writer.Write(typeof(System.Xml.Serialization.XmlSerializationReader).FullName); 2285Writer.WriteLine(" {"); 2286Writer.Indent++; 2347Writer.WriteLine(); 2350Writer.Write("string "); 2351Writer.Write(idName); 2352Writer.WriteLine(";"); 2355Writer.WriteLine(); 2356Writer.WriteLine("protected override void InitIDs() {"); 2357Writer.Indent++; 2362Writer.Write(idName); 2363Writer.Write(" = Reader.NameTable.Add("); 2365Writer.WriteLine(");"); 2367Writer.Indent--; 2368Writer.WriteLine("}"); 2370Writer.Indent--; 2371Writer.WriteLine("}"); 2390Writer.Write("if (Reader.IsStartElement("); 2392Writer.Write(", "); 2394Writer.WriteLine(")) {"); 2395Writer.Indent++; 2402Writer.WriteLine("else {"); 2403Writer.Indent++; 2405Writer.Write(func); 2406Writer.Write("("); 2407Writer.Write(node); 2410Writer.Write(", "); 2414ReflectionAwareCodeGen.WriteQuotedCSharpString(Writer, expectedElement); 2416Writer.WriteLine(");"); 2419Writer.Indent--; 2420Writer.WriteLine("}"); 2426Writer.WriteLine(); 2427Writer.WriteLine("protected override void InitCallbacks() {"); 2428Writer.Indent++; 2449Writer.Write("AddReadCallback("); 2451Writer.Write(", "); 2453Writer.Write(", "); 2454Writer.Write(RaCodeGen.GetStringForTypeof(mapping.TypeDesc.CSharpName, mapping.TypeDesc.UseReflection)); 2455Writer.Write(", new "); 2456Writer.Write(typeof(XmlSerializationReadCallback).FullName); 2457Writer.Write("(this."); 2458Writer.Write(methodName); 2459Writer.WriteLine("));"); 2464Writer.Indent--; 2465Writer.WriteLine("}"); 2469Writer.WriteLine(); 2470Writer.Write("object "); 2471Writer.Write(dummyArrayMethodName); 2472Writer.WriteLine("() {"); 2473Writer.Indent++; 2474Writer.WriteLine("// dummy array method"); 2475Writer.WriteLine("UnknownNode(null);"); 2476Writer.WriteLine("return null;"); 2477Writer.Indent--; 2478Writer.WriteLine("}"); 2526Writer.WriteLine(); 2527Writer.Write("public object[] "); 2528Writer.Write(methodName); 2529Writer.WriteLine("() {"); 2530Writer.Indent++; 2531Writer.WriteLine("Reader.MoveToContent();"); 2533Writer.Write("object[] p = new object["); 2534Writer.Write(mappings.Length.ToString(CultureInfo.InvariantCulture)); 2535Writer.WriteLine("];"); 2541Writer.Indent++; 2619if (members.Length > 0 && members[0].Mapping.IsReturnValue) Writer.WriteLine("IsReturnValue = true;"); 2629Writer.WriteLine("Reader.MoveToElement();"); 2636Writer.WriteLine("if (Reader.IsEmptyElement) { Reader.Skip(); Reader.MoveToContent(); continue; }"); 2637Writer.WriteLine("Reader.ReadStartElement();"); 2641Writer.WriteLine("int state = 0;"); 2644Writer.Indent++; 2649Writer.WriteLine("Reader.MoveToContent();"); 2656Writer.WriteLine("ReadEndElement();"); 2658Writer.Indent--; 2659Writer.WriteLine("}"); 2663Writer.WriteLine("Reader.MoveToContent();"); 2667Writer.WriteLine("return p;"); 2668Writer.Indent--; 2669Writer.WriteLine("}"); 2680Writer.Write(arrayName); 2681Writer.Write("["); 2682Writer.Write(i.ToString(CultureInfo.InvariantCulture)); 2683Writer.Write("] = "); 2687Writer.Write("null"); 2691Writer.Write(RaCodeGen.GetStringForCreateInstance(mappings[i].TypeDesc!.CSharpName, mappings[i].TypeDesc!.UseReflection, false, false)); 2693Writer.WriteLine(";"); 2705Writer.WriteLine(); 2706Writer.Write("public object[] "); 2707Writer.Write(methodName); 2708Writer.WriteLine("() {"); 2709Writer.Indent++; 2711Writer.WriteLine("Reader.MoveToContent();"); 2713Writer.Write("object[] p = new object["); 2714Writer.Write(mappings.Length.ToString(CultureInfo.InvariantCulture)); 2715Writer.WriteLine("];"); 2724Writer.Write("if (!"); 2726Writer.WriteLine(") throw CreateUnknownNodeException();"); 2728Writer.WriteLine("bool isEmptyWrapper = Reader.IsEmptyElement;"); 2729Writer.WriteLine("Reader.ReadStartElement();"); 2764if (members.Length > 0 && members[0].Mapping.IsReturnValue) Writer.WriteLine("IsReturnValue = true;"); 2772Writer.Indent++; 2776Writer.WriteLine("Reader.MoveToContent();"); 2781Writer.WriteLine("if (!isEmptyWrapper) ReadEndElement();"); 2786Writer.WriteLine("ReadReferencedElements();"); 2787Writer.WriteLine("return p;"); 2789Writer.Indent--; 2790Writer.WriteLine("}"); 2807Writer.Write(item); 2808Writer.Write(" "); 2809Writer.Write("ci ="); 2810Writer.Write($"({item})"); 2811Writer.Write(source); 2812Writer.WriteLine(";"); 2814Writer.WriteLine("for (int i = 0; i < ci.Length; i++) {"); 2815Writer.Indent++; 2816Writer.Write(RaCodeGen.GetStringForMethod("c", td.CSharpName, "Add", useReflection)); 2821Writer.Write("ci[i]"); 2823Writer.Write($"{RaCodeGen.GetReflectionVariable(typeof(Array).FullName!, "0")}[ci , i]"); 2826if (useReflection) Writer.WriteLine("}"); 2827Writer.WriteLine(");"); 2828Writer.Indent--; 2829Writer.WriteLine("}"); 2837Writer.WriteLine(); 2838Writer.Write("public object "); 2839Writer.Write(methodName); 2840Writer.WriteLine("() {"); 2841Writer.Indent++; 2842Writer.WriteLine("object o = null;"); 2848Writer.WriteLine("Reader.MoveToContent();"); 2853Writer.WriteLine("Referenced(o);"); 2854Writer.WriteLine("ReadReferencedElements();"); 2856Writer.WriteLine("return (object)o;"); 2857Writer.Indent--; 2858Writer.WriteLine("}"); 2877Writer.Write("("); 2878Writer.Write(mapping.TypeDesc!.CSharpName); 2879Writer.Write(")"); 2881Writer.Write(enumMethodName); 2882Writer.Write("("); 2883if (!mapping.IsSoap) Writer.Write(source); 2884Writer.Write(")"); 2888Writer.Write(source); 2894Writer.Write("CollapseWhitespace("); 2895Writer.Write(source); 2896Writer.Write(")"); 2900Writer.Write(source); 2907Writer.Write(typeof(XmlConvert).FullName); 2908Writer.Write("."); 2910Writer.Write("To"); 2911Writer.Write(mapping.TypeDesc.FormatterName); 2912Writer.Write("("); 2913Writer.Write(source); 2914Writer.Write(")"); 2949Writer.WriteLine(); 2950Writer.Write(typeof(Hashtable).FullName); 2951Writer.Write(" "); 2952Writer.Write(memberName); 2953Writer.WriteLine(";"); 2954Writer.WriteLine(); 2956Writer.Write("internal "); 2957Writer.Write(typeof(Hashtable).FullName); 2958Writer.Write(" "); 2959Writer.Write(propName); 2960Writer.WriteLine(" {"); 2961Writer.Indent++; 2963Writer.WriteLine("get {"); 2964Writer.Indent++; 2966Writer.Write("if ((object)"); 2967Writer.Write(memberName); 2968Writer.WriteLine(" == null) {"); 2969Writer.Indent++; 2971Writer.Write(typeof(Hashtable).FullName); 2972Writer.Write(" h = new "); 2973Writer.Write(typeof(Hashtable).FullName); 2974Writer.WriteLine("();"); 2980Writer.Write("h.Add("); 2984Writer.Write(", (long)"); 2985Writer.Write(mapping.TypeDesc.CSharpName); 2986Writer.Write(".@"); 2988Writer.Write(constants[i].Name); 2992Writer.Write(", "); 2993Writer.Write(string.Create(CultureInfo.InvariantCulture, $"{constants[i].Value}L")); 2996Writer.WriteLine(");"); 2999Writer.Write(memberName); 3000Writer.WriteLine(" = h;"); 3002Writer.Indent--; 3003Writer.WriteLine("}"); 3005Writer.Write("return "); 3006Writer.Write(memberName); 3007Writer.WriteLine(";"); 3009Writer.Indent--; 3010Writer.WriteLine("}"); 3012Writer.Indent--; 3013Writer.WriteLine("}"); 3025Writer.WriteLine(); 3031Writer.Write("object"); 3032Writer.Write(" "); 3033Writer.Write(methodName); 3034Writer.WriteLine("() {"); 3035Writer.Indent++; 3036Writer.WriteLine("string s = Reader.ReadElementString();"); 3040Writer.Write(useReflection ? "object" : fullTypeName); 3041Writer.Write(" "); 3042Writer.Write(methodName); 3043Writer.WriteLine("(string s) {"); 3044Writer.Indent++; 3052Writer.Write("return "); 3053Writer.Write(typeof(Enum).FullName); 3054Writer.Write(".ToObject("); 3055Writer.Write(RaCodeGen.GetStringForTypeof(fullTypeName, useReflection)); 3056Writer.Write(", ToEnum(s, "); 3057Writer.Write(tableName); 3058Writer.Write(", "); 3060Writer.WriteLine("));"); 3064Writer.Write("return ("); 3065Writer.Write(fullTypeName); 3066Writer.Write(")ToEnum(s, "); 3067Writer.Write(tableName); 3068Writer.Write(", "); 3070Writer.WriteLine(");"); 3075Writer.WriteLine("switch (s) {"); 3076Writer.Indent++; 3085Writer.Write("case "); 3087Writer.Write(": return "); 3088Writer.Write(RaCodeGen.GetStringForEnumMember(fullTypeName, c.Name, useReflection)); 3089Writer.WriteLine(";"); 3094Writer.Write("default: throw CreateUnknownConstantException(s, "); 3095Writer.Write(RaCodeGen.GetStringForTypeof(fullTypeName, useReflection)); 3096Writer.WriteLine(");"); 3097Writer.Indent--; 3098Writer.WriteLine("}"); 3101Writer.Indent--; 3102Writer.WriteLine("}"); 3109Writer.Write("if ("); 3111Writer.WriteLine(")"); 3112Writer.Indent++; 3120Writer.Write("return "); 3122Writer.Write($"({returnTypeName})"); 3123Writer.Write(methodName); 3124Writer.Write("("); 3126Writer.Write("isNullable, "); 3127Writer.WriteLine("false);"); 3129Writer.Indent--; 3146Writer.Write("if ("); 3148Writer.WriteLine(") {"); 3149Writer.Indent++; 3150Writer.WriteLine("Reader.ReadStartElement();"); 3156Writer.Write("object e = "); 3157Writer.Write(methodName); 3158Writer.WriteLine("(CollapseWhitespace(Reader.ReadString()));"); 3159Writer.WriteLine("ReadEndElement();"); 3160Writer.WriteLine("return e;"); 3161Writer.Indent--; 3162Writer.WriteLine("}"); 3168Writer.Write("if ("); 3170Writer.WriteLine(") {"); 3171Writer.Indent++; 3182Writer.Write(typeof(Array).FullName); 3184Writer.Write("object"); 3187Writer.Write(fullTypeName); 3188Writer.Write(" a = "); 3191Writer.Write(RaCodeGen.GetStringForCreateInstance(fullTypeName, td.UseReflection, false, false)); 3192Writer.WriteLine(";"); 3195Writer.WriteLine("null;"); 3198Writer.WriteLine("return a;"); 3199Writer.Indent--; 3200Writer.WriteLine("}"); 3212Writer.WriteLine(); 3214Writer.Write(typeName); 3215Writer.Write(" "); 3216Writer.Write(methodName); 3217Writer.WriteLine("(bool checkType) {"); 3218Writer.Indent++; 3220Writer.Write(typeName); 3221Writer.Write(" o = "); 3225Writer.Write("null"); 3229Writer.Write("default("); 3230Writer.Write(typeName); 3231Writer.Write(")"); 3233Writer.WriteLine(";"); 3235Writer.WriteLine("if (ReadNull())"); 3236Writer.Indent++; 3238Writer.WriteLine("return o;"); 3239Writer.Indent--; 3247Writer.WriteLine("return o;"); 3249Writer.Indent--; 3250Writer.WriteLine("}"); 3266Writer.WriteLine(); 3267Writer.Write(typeName); 3268Writer.Write(" "); 3269Writer.Write(methodName); 3270Writer.Write("("); 3272Writer.Write("bool isNullable, "); 3273Writer.WriteLine("bool checkType) {"); 3274Writer.Indent++; 3276Writer.Write(typeof(XmlQualifiedName).FullName); 3277Writer.WriteLine(" xsiType = checkType ? GetXsiType() : null;"); 3278Writer.WriteLine("bool isNull = false;"); 3280Writer.WriteLine("if (isNullable) isNull = ReadNull();"); 3282Writer.WriteLine("if (checkType) {"); 3285Writer.Indent++; 3286Writer.WriteLine("if (isNull) {"); 3287Writer.Indent++; 3288Writer.WriteLine($"if (xsiType != null) return ({typeName})ReadTypedNull(xsiType);"); 3289Writer.Write("else return "); 3292Writer.Write(RaCodeGen.GetStringForCreateInstance(structMapping.TypeDesc.CSharpName, useReflection, false, false)); 3293Writer.WriteLine(";"); 3296Writer.WriteLine("null;"); 3298Writer.Indent--; 3299Writer.WriteLine("}"); 3301Writer.Write("if (xsiType == null"); 3304Writer.Write(" || "); 3307Writer.WriteLine(") {"); 3310Writer.Indent++; 3311Writer.WriteLine($"return ReadTypedPrimitive(new System.Xml.XmlQualifiedName(\"{Soap.UrType}\", \"{XmlSchema.Namespace}\"));"); 3312Writer.Indent--; 3314Writer.WriteLine("}"); 3315Writer.WriteLine("else {"); 3316Writer.Indent++; 3320Writer.Write("return ReadTypedPrimitive(("); 3322Writer.Write("throw CreateUnknownTypeException(("); 3323Writer.Write(typeof(XmlQualifiedName).FullName); 3324Writer.WriteLine(")xsiType);"); 3325Writer.Indent--; 3326Writer.WriteLine("}"); 3328Writer.Indent--; 3329Writer.WriteLine("}"); 3331Writer.WriteLine("if (isNull) return null;"); 3335Writer.Write("throw CreateAbstractTypeException("); 3337Writer.Write(", "); 3339Writer.WriteLine(");"); 3345Writer.WriteLine("DecodeName = false;"); 3435Writer.WriteLine("Reader.MoveToElement();"); 3437Writer.WriteLine("if (Reader.IsEmptyElement) {"); 3438Writer.Indent++; 3439Writer.WriteLine("Reader.Skip();"); 3441Writer.WriteLine("return o;"); 3442Writer.Indent--; 3443Writer.WriteLine("}"); 3445Writer.WriteLine("Reader.ReadStartElement();"); 3448Writer.WriteLine("int state = 0;"); 3451Writer.Indent++; 3454Writer.WriteLine("Reader.MoveToContent();"); 3459Writer.WriteLine("ReadEndElement();"); 3460Writer.WriteLine("return o;"); 3462Writer.Indent--; 3463Writer.WriteLine("}"); 3471Writer.WriteLine(); 3472Writer.Write("object"); 3473Writer.Write(" "); 3474Writer.Write(methodName); 3475Writer.Write("("); 3476Writer.WriteLine(") {"); 3477Writer.Indent++; 3485Writer.Write("throw CreateAbstractTypeException("); 3487Writer.Write(", "); 3489Writer.WriteLine(");"); 3520Writer.WriteLine("Reader.MoveToElement();"); 3522Writer.WriteLine("if (Reader.IsEmptyElement) { Reader.Skip(); return o; }"); 3523Writer.WriteLine("Reader.ReadStartElement();"); 3526Writer.Indent++; 3529Writer.WriteLine("Reader.MoveToContent();"); 3533Writer.WriteLine("ReadEndElement();"); 3534Writer.WriteLine("return o;"); 3536Writer.Indent--; 3537Writer.WriteLine("}"); 3544Writer.WriteLine(); 3545Writer.Write("void "); 3546Writer.Write(fixupMethodName); 3547Writer.WriteLine("(object objFixup) {"); 3548Writer.Indent++; 3549Writer.WriteLine("Fixup fixup = (Fixup)objFixup;"); 3551Writer.WriteLine("string[] ids = fixup.Ids;"); 3559Writer.Write("if (ids["); 3560Writer.Write(fixupIndex); 3561Writer.WriteLine("] != null) {"); 3562Writer.Indent++; 3576Writer.WriteLine("try {"); 3577Writer.Indent++; 3583Writer.Write(targetSource); 3585Writer.WriteLine(";"); 3589Writer.Write(member.CheckSpecifiedSource); 3590Writer.WriteLine(" = true;"); 3598Writer.Indent--; 3599Writer.WriteLine("}"); 3602Writer.Indent--; 3603Writer.WriteLine("}"); 3608Writer.WriteLine("// get array of the collection items"); 3617Writer.Write("if ((object)("); 3618Writer.Write(memberSource); 3619Writer.WriteLine(") == null) {"); 3620Writer.Indent++; 3624Writer.Write("throw CreateReadOnlyCollectionException("); 3626Writer.WriteLine(");"); 3630Writer.Write(memberSource); 3631Writer.Write(" = "); 3632Writer.Write(RaCodeGen.GetStringForCreateInstance(typeDesc.CSharpName, typeDesc.UseReflection, typeDesc.CannotNew, true)); 3633Writer.WriteLine(";"); 3636Writer.Indent--; 3637Writer.WriteLine("}"); 3639Writer.Write("CollectionFixup collectionFixup = new CollectionFixup("); 3640Writer.Write(memberSource); 3641Writer.Write(", "); 3642Writer.Write("new "); 3643Writer.Write(typeof(XmlSerializationCollectionFixupCallback).FullName); 3644Writer.Write("(this."); 3645Writer.Write(create.Name); 3646Writer.Write("), "); 3647Writer.Write(targetSource); 3648Writer.WriteLine(");"); 3649Writer.WriteLine("AddFixup(collectionFixup);"); 3654Writer.Write("void "); 3655Writer.Write(c.Name); 3656Writer.WriteLine("(object collection, object collectionItems) {"); 3657Writer.Indent++; 3659Writer.WriteLine("if (collectionItems == null) return;"); 3660Writer.WriteLine("if (collection == null) return;"); 3669Writer.Indent--; 3670Writer.WriteLine("}"); 3675Writer.Write("((object) (("); 3676Writer.Write(typeof(XmlQualifiedName).FullName); 3677Writer.Write(")"); 3678Writer.Write(source); 3679Writer.Write(").Name == (object)"); 3681Writer.Write(" && (object) (("); 3682Writer.Write(typeof(XmlQualifiedName).FullName); 3683Writer.Write(")"); 3684Writer.Write(source); 3685Writer.Write(").Namespace == (object)"); 3687Writer.Write(")"); 3692Writer.Write("("); 3695Writer.Write("(object) "); 3696Writer.Write(source); 3697Writer.Write(".LocalName == (object)"); 3699Writer.Write(" && "); 3701Writer.Write("(object) "); 3702Writer.Write(source); 3703Writer.Write(".NamespaceURI == (object)"); 3705Writer.Write(")"); 3717Writer.Write(idName); 3726Writer.WriteLine("while (Reader.MoveToNextAttribute()) {"); 3727Writer.Indent++; 3747Writer.Write("else "); 3749Writer.Write("if ("); 3752Writer.Write("!"); 3753Writer.Write(member.ParamsReadSource); 3754Writer.Write(" && "); 3763Writer.WriteLine(") {"); 3764Writer.Indent++; 3767Writer.Indent--; 3768Writer.WriteLine("}"); 3772Writer.Write("else "); 3776Writer.WriteLine("if (IsXmlnsAttribute(Reader.Name)) {"); 3777Writer.Indent++; 3779Writer.Write("if ("); 3780Writer.Write(xmlnsMember.Source); 3781Writer.Write(" == null) "); 3782Writer.Write(xmlnsMember.Source); 3783Writer.Write(" = new "); 3784Writer.Write(xmlnsMember.Mapping.TypeDesc!.CSharpName); 3785Writer.WriteLine("();"); 3788Writer.Write($"(({xmlnsMember.Mapping.TypeDesc.CSharpName}){xmlnsMember.ArraySource})"); 3789Writer.WriteLine(".Add(Reader.Name.Length == 5 ? \"\" : Reader.LocalName, Reader.Value);"); 3791Writer.Indent--; 3792Writer.WriteLine("}"); 3794Writer.WriteLine("else {"); 3795Writer.Indent++; 3799Writer.WriteLine("if (!IsXmlnsAttribute(Reader.Name)) {"); 3800Writer.Indent++; 3804Writer.Write(typeof(XmlAttribute).FullName); 3805Writer.Write(" attr = "); 3806Writer.Write("("); 3807Writer.Write(typeof(XmlAttribute).FullName); 3808Writer.WriteLine(") Document.ReadNode(Reader);"); 3809Writer.WriteLine("ParseWsdlArrayType(attr);"); 3814Writer.Write(elseCall); 3815Writer.Write("("); 3816Writer.Write(firstParam); 3819Writer.Write(", "); 3831Writer.WriteLine(");"); 3833Writer.Indent--; 3834Writer.WriteLine("}"); 3836Writer.Indent--; 3837Writer.WriteLine("}"); 3849Writer.Write("attr"); 3851Writer.WriteLine(";"); 3855Writer.Write("if (attr is "); 3856Writer.Write(typeof(XmlAttribute).FullName); 3857Writer.WriteLine(") {"); 3858Writer.Indent++; 3860Writer.Write("("); 3861Writer.Write(typeof(XmlAttribute).FullName); 3862Writer.Write(")attr"); 3864Writer.WriteLine(";"); 3865Writer.Indent--; 3866Writer.WriteLine("}"); 3875Writer.WriteLine("string listValues = Reader.Value;"); 3876Writer.WriteLine("string[] vals = listValues.Split(null);"); 3877Writer.WriteLine("for (int i = 0; i < vals.Length; i++) {"); 3878Writer.Indent++; 3885Writer.WriteLine(";"); 3886Writer.Indent--; 3887Writer.WriteLine("}"); 3894Writer.WriteLine(";"); 3899Writer.Write(member.CheckSpecifiedSource); 3900Writer.WriteLine(" = true;"); 3904Writer.Write(member.ParamsReadSource); 3905Writer.WriteLine(" = true;"); 3928Writer.Write("Fixup fixup = new Fixup("); 3929Writer.Write(source); 3930Writer.Write(", "); 3931Writer.Write("new "); 3932Writer.Write(typeof(XmlSerializationFixupCallback).FullName); 3933Writer.Write("(this."); 3934Writer.Write(fixupMethodName); 3935Writer.Write("), "); 3936Writer.Write(fixupCount.ToString(CultureInfo.InvariantCulture)); 3937Writer.WriteLine(");"); 3938Writer.WriteLine("AddFixup(fixup);"); 3962Writer.Write("int "); 3963Writer.Write(c); 3964Writer.WriteLine(" = 0;"); 3971Writer.Write("int c"); 3972Writer.Write(member.ChoiceArrayName); 3973Writer.WriteLine(" = 0;"); 3982Writer.Write(member.Source); 3983Writer.Write(a); 3985Writer.WriteLine("});"); 3987Writer.WriteLine(");"); 3994Writer.Write("if ((object)("); 3995Writer.Write(member.Source); 3996Writer.Write(") == null) "); 3999Writer.Write("throw CreateReadOnlyCollectionException("); 4001Writer.WriteLine(");"); 4005Writer.Write(member.Source); 4006Writer.Write(" = "); 4007Writer.Write(RaCodeGen.GetStringForCreateInstance(typeDescFullName, useReflection, typeDesc.CannotNew, true)); 4008Writer.WriteLine(";"); 4059Writer.WriteLine("string tmp = null;"); 4062Writer.Write("if (Reader.NodeType == "); 4063Writer.Write(typeof(XmlNodeType).FullName); 4064Writer.WriteLine(".Element) {"); 4065Writer.Indent++; 4077Writer.Indent--; 4078Writer.WriteLine("}"); 4083Writer.WriteLine("else {"); 4084Writer.Indent++; 4085Writer.WriteLine(elseString); 4086Writer.Indent--; 4087Writer.WriteLine("}"); 4092Writer.Write("else if (Reader.NodeType == "); 4093Writer.Write(typeof(XmlNodeType).FullName); 4094Writer.WriteLine(".Text || "); 4095Writer.Write("Reader.NodeType == "); 4096Writer.Write(typeof(XmlNodeType).FullName); 4097Writer.WriteLine(".CDATA || "); 4098Writer.Write("Reader.NodeType == "); 4099Writer.Write(typeof(XmlNodeType).FullName); 4100Writer.WriteLine(".Whitespace || "); 4101Writer.Write("Reader.NodeType == "); 4102Writer.Write(typeof(XmlNodeType).FullName); 4103Writer.WriteLine(".SignificantWhitespace) {"); 4104Writer.Indent++; 4112Writer.Write(elseString); 4113Writer.WriteLine(";"); 4115Writer.Indent--; 4116Writer.WriteLine("}"); 4129Writer.Write("Document.CreateTextNode(Reader.ReadString())"); 4143Writer.Write("CollapseWhitespace(Reader.ReadString())"); 4147Writer.Write("Reader.ReadString()"); 4154Writer.Write("tmp = ReadString(tmp, "); 4156Writer.WriteLine("true);"); 4158Writer.WriteLine("false);"); 4161Writer.Write("tmp"); 4172Writer.WriteLine(";"); 4177Writer.WriteLine("string refElemId = null;"); 4178Writer.WriteLine("object refElem = ReadReferencingElement(null, null, true, out refElemId);"); 4180Writer.WriteLine("if (refElemId != null) {"); 4181Writer.Indent++; 4182Writer.Write(checkTypeHrefsSource); 4183Writer.WriteLine(".Add(refElemId);"); 4184Writer.Write(checkTypeHrefsSource); 4185Writer.WriteLine("IsObject.Add(false);"); 4186Writer.Indent--; 4187Writer.WriteLine("}"); 4188Writer.WriteLine("else if (refElem != null) {"); 4189Writer.Indent++; 4190Writer.Write(checkTypeHrefsSource); 4191Writer.WriteLine(".Add(refElem);"); 4192Writer.Write(checkTypeHrefsSource); 4193Writer.WriteLine("IsObject.Add(true);"); 4194Writer.Indent--; 4195Writer.WriteLine("}"); 4215Writer.WriteLine(elementElseString); 4237Writer.WriteLine("switch (state) {"); 4264Writer.WriteLine("do {"); 4265Writer.Indent++; 4272Writer.Write("else "); 4276Writer.Write("case "); 4277Writer.Write(cases.ToString(CultureInfo.InvariantCulture)); 4278Writer.WriteLine(":"); 4279Writer.Indent++; 4284Writer.Write("if ("); 4287Writer.Write("!"); 4288Writer.Write(member.ParamsReadSource); 4289Writer.Write(" && "); 4296Writer.Write(RaCodeGen.GetStringForTypeof(td.CSharpName, td.UseReflection)); 4300Writer.Write(RaCodeGen.GetStringForTypeof(e.Mapping!.TypeDesc!.CSharpName, e.Mapping.TypeDesc.UseReflection)); 4302Writer.Write(".IsAssignableFrom("); 4303Writer.Write(checkTypeSource); 4304Writer.Write("Type)"); 4309Writer.Write("(IsReturnValue || "); 4312Writer.Write("true"); 4319Writer.Write(")"); 4321Writer.WriteLine(") {"); 4322Writer.Indent++; 4327Writer.Write("if ("); 4328Writer.Write(checkTypeSource); 4329Writer.WriteLine(" != null) {"); 4330Writer.Indent++; 4336Writer.Write(RaCodeGen.GetStringForCreateInstance(e.Mapping.TypeDesc.CSharpName, e.Mapping.TypeDesc.UseReflection, false, true, $"({td.CSharpName}){checkTypeSource}")); 4341Writer.Write(checkTypeSource); 4344Writer.WriteLine(";"); 4347Writer.Indent--; 4348Writer.WriteLine("}"); 4352Writer.Write("fixup.Ids["); 4353Writer.Write(member.FixupIndex.ToString(CultureInfo.InvariantCulture)); 4354Writer.Write("] = "); 4355Writer.Write(checkTypeSource); 4356Writer.WriteLine("Id;"); 4364Writer.WriteLine("IsReturnValue = false;"); 4367Writer.Write(member.ParamsReadSource); 4368Writer.WriteLine(" = true;"); 4372Writer.WriteLine("break;"); 4374Writer.Indent--; 4375Writer.WriteLine("}"); 4381Writer.WriteLine("else {"); 4382Writer.Indent++; 4385Writer.Write("state = "); 4386Writer.Write(cases.ToString(CultureInfo.InvariantCulture)); 4387Writer.WriteLine(";"); 4390Writer.Indent--; 4391Writer.WriteLine("}"); 4393Writer.WriteLine("break;"); 4394Writer.Indent--; 4401Writer.WriteLine("default:"); 4402Writer.Indent++; 4410Writer.WriteLine("break;"); 4412Writer.Indent--; 4415Writer.WriteLine("} while (false);"); 4419Writer.WriteLine("}"); 4480Writer.Write(" soap[1] = "); 4488Writer.Write($"({arrayTypeFullName}[])"); 4489Writer.Write("ShrinkArray("); 4490Writer.Write(a); 4491Writer.Write(", "); 4492Writer.Write(c); 4493Writer.Write(", "); 4494Writer.Write(RaCodeGen.GetStringForTypeof(arrayTypeFullName, arrayUseReflection)); 4495Writer.Write(", "); 4497Writer.Write(")"); 4499Writer.WriteLine(";"); 4510Writer.Write($"({choiceTypeName}[])"); 4511Writer.Write("ShrinkArray("); 4512Writer.Write(a); 4513Writer.Write(", "); 4514Writer.Write(c); 4515Writer.Write(", "); 4516Writer.Write(RaCodeGen.GetStringForTypeof(choiceTypeName, choiceUseReflection)); 4517Writer.Write(", "); 4519Writer.Write(")"); 4521Writer.WriteLine(";"); 4526Writer.Write(member.Source); 4527Writer.Write(" = "); 4528Writer.Write(member.ArrayName); 4529Writer.WriteLine(";"); 4540Writer.Write("("); 4541Writer.Write(typeDesc.CSharpName); 4542Writer.Write(")"); 4548Writer.Write(source); 4550Writer.Write(" = "); 4558Writer.Write(")"); 4560Writer.Write("})"); 4567Writer.Write("object rre = "); 4568Writer.Write(fixupIndex >= 0 ? "ReadReferencingElement" : "ReadReferencedElement"); 4569Writer.Write("("); 4571Writer.Write(", "); 4575Writer.Write(", "); 4576Writer.Write("out fixup.Ids["); 4577Writer.Write((fixupIndex).ToString(CultureInfo.InvariantCulture)); 4578Writer.Write("]"); 4580Writer.WriteLine(");"); 4585Writer.WriteLine("if (rre != null) {"); 4586Writer.Indent++; 4588Writer.Indent--; 4589Writer.WriteLine("}"); 4593Writer.WriteLine("try {"); 4594Writer.Indent++; 4596Writer.Write("rre"); 4598Writer.WriteLine(";"); 4604Writer.WriteLine("if (!ReadNull()) {"); 4605Writer.Indent++; 4619Writer.Write("if (((object)("); 4620Writer.Write(member.ArrayName); 4621Writer.Write(") == null) || "); 4625Writer.Write("if ("); 4627Writer.WriteLine("(Reader.IsEmptyElement)) {"); 4628Writer.Indent++; 4629Writer.WriteLine("Reader.Skip();"); 4630Writer.Indent--; 4631Writer.WriteLine("}"); 4632Writer.WriteLine("else {"); 4633Writer.Indent++; 4635Writer.WriteLine("Reader.ReadStartElement();"); 4637Writer.Indent++; 4641Writer.WriteLine("Reader.MoveToContent();"); 4644Writer.Indent--; 4645Writer.WriteLine("ReadEndElement();"); 4646Writer.WriteLine("}"); 4650Writer.Indent--; 4651Writer.WriteLine("}"); 4654Writer.WriteLine("else {"); 4655Writer.Indent++; 4659Writer.Indent--; 4660Writer.WriteLine("}"); 4669Writer.Write(checkSpecified); 4670Writer.WriteLine(" = true;"); 4685Writer.Write(methodName); 4686Writer.Write("(true)"); 4688Writer.WriteLine(";"); 4694Writer.WriteLine("if (ReadNull()) {"); 4695Writer.Indent++; 4699Writer.Write(RaCodeGen.GetStringForCreateInstance(element.Mapping.TypeDesc.CSharpName, element.Mapping.TypeDesc.UseReflection, false, false)); 4703Writer.Write("null"); 4706Writer.WriteLine(";"); 4707Writer.Indent--; 4708Writer.WriteLine("}"); 4709Writer.Write("else "); 4713Writer.WriteLine("if (Reader.IsEmptyElement) {"); 4714Writer.Indent++; 4715Writer.WriteLine("Reader.Skip();"); 4716Writer.Indent--; 4717Writer.WriteLine("}"); 4718Writer.WriteLine("else {"); 4722Writer.WriteLine("{"); 4724Writer.Indent++; 4729Writer.WriteLine("if (Reader.IsEmptyElement) {"); 4730Writer.Indent++; 4731Writer.WriteLine("Reader.Skip();"); 4735Writer.Write("default(System.TimeSpan)"); 4739Writer.Write("default(System.DateTimeOffset)"); 4743Writer.Write("default(System.DateOnly)"); 4747Writer.Write("default(System.TimeOnly)"); 4750Writer.WriteLine(";"); 4751Writer.Indent--; 4752Writer.WriteLine("}"); 4753Writer.WriteLine("else {"); 4754Writer.Indent++; 4758Writer.WriteLine(";"); 4759Writer.Indent--; 4760Writer.WriteLine("}"); 4766Writer.Write("ReadElementQualifiedName()"); 4784Writer.WriteLine(";"); 4786Writer.Indent--; 4787Writer.WriteLine("}"); 4794Writer.Write("object rre = "); 4795Writer.Write(fixupIndex >= 0 ? "ReadReferencingElement" : "ReadReferencedElement"); 4796Writer.Write("("); 4798Writer.Write(", "); 4803Writer.Write(", out fixup.Ids["); 4804Writer.Write((fixupIndex).ToString(CultureInfo.InvariantCulture)); 4805Writer.Write("]"); 4807Writer.Write(")"); 4809Writer.WriteLine(";"); 4813Writer.WriteLine("if (rre != null) {"); 4814Writer.Indent++; 4817Writer.WriteLine("try {"); 4818Writer.Indent++; 4820Writer.Write("rre"); 4822Writer.WriteLine(";"); 4824Writer.Write("Referenced("); 4825Writer.Write(source); 4826Writer.WriteLine(");"); 4829Writer.Indent--; 4830Writer.WriteLine("}"); 4843Writer.Write("if ((object)("); 4844Writer.Write(arrayName); 4845Writer.Write(") == null) Reader.Skip(); else "); 4848Writer.Write(methodName); 4849Writer.Write("("); 4853Writer.Write(", "); 4855Writer.Write("true"); 4856Writer.Write(")"); 4858Writer.WriteLine(";"); 4868Writer.Write(isDoc ? "ReadXmlDocument(" : "ReadXmlNode("); 4869Writer.Write(element.Any ? "false" : "true"); 4870Writer.Write(")"); 4872Writer.WriteLine(";"); 4879Writer.Write(typeof(XmlQualifiedName).FullName); 4880Writer.WriteLine(" tser = GetXsiType();"); 4881Writer.Write("if (tser == null"); 4882Writer.Write(" || "); 4885Writer.WriteLine(") {"); 4886Writer.Indent++; 4889Writer.Write("ReadSerializable(( "); 4890Writer.Write(typeof(IXmlSerializable).FullName); 4891Writer.Write(")"); 4894Writer.Write(RaCodeGen.GetStringForCreateInstance(sm.TypeDesc!.CSharpName, false, false, false, "\"default\"")); 4898Writer.Write(RaCodeGen.GetStringForCreateInstance(sm.TypeDesc!.CSharpName, sm.TypeDesc.UseReflection, sm.TypeDesc.CannotNew, false)); 4903Writer.WriteLine(", true"); 4905Writer.Write(")"); 4907Writer.WriteLine(";"); 4910Writer.Indent--; 4911Writer.WriteLine("}"); 4932Writer.Write(choiceSource); 4933Writer.Write(" = "); 4935Writer.Write(RaCodeGen.GetStringForEnumMember(enumTypeName, choice.MemberIds[elementIndex], choice.Mapping.TypeDesc.UseReflection)); 4936Writer.WriteLine(";"); 4946Writer.Write("else if (tser == null"); 4947Writer.Write(" || "); 4950Writer.WriteLine(") {"); 4951Writer.Indent++; 4958Writer.Write("ReadSerializable(( "); 4959Writer.Write(typeof(IXmlSerializable).FullName); 4960Writer.Write(")"); 4961Writer.Write(RaCodeGen.GetStringForCreateInstance(derived.TypeDesc!.CSharpName, derived.TypeDesc.UseReflection, derived.TypeDesc.CannotNew, false)); 4964Writer.WriteLine(", true"); 4966Writer.Write(")"); 4968Writer.WriteLine(";"); 4972Writer.Write("throw CreateBadDerivationException("); 4974Writer.Write(", "); 4976Writer.Write(", "); 4978Writer.Write(", "); 4980Writer.Write(", "); 4982Writer.Write(", "); 4984Writer.WriteLine(");"); 4989Writer.WriteLine($"// missing real mapping for {derived.XsiType}"); 4990Writer.Write("throw CreateMissingIXmlSerializableType("); 4992Writer.Write(", "); 4994Writer.Write(", "); 4996Writer.WriteLine(");"); 4999Writer.Indent--; 5000Writer.WriteLine("}"); 5008Writer.WriteLine("Reader.MoveToContent();"); 5009Writer.Write("while (Reader.NodeType != "); 5010Writer.Write(typeof(XmlNodeType).FullName); 5011Writer.Write(".EndElement && Reader.NodeType != "); 5012Writer.Write(typeof(XmlNodeType).FullName); 5013Writer.WriteLine(".None) {"); 5018Writer.Indent--; 5019Writer.WriteLine("}"); 5025Writer.Write(length <= StackallocLimit ? 5028Writer.Write(length.ToString(CultureInfo.InvariantCulture)); 5029Writer.WriteLine("];"); 5034Writer.WriteLine("Reader.MoveToContent();"); 5035Writer.Write("while (Reader.NodeType == "); 5036Writer.Write(typeof(XmlNodeType).FullName); 5037Writer.WriteLine(".Element) {"); 5038Writer.Indent++; 5039Writer.Write("string root = Reader.GetAttribute(\"root\", \""); 5040Writer.Write(Soap.Encoding); 5041Writer.WriteLine("\");"); 5042Writer.Write("if (root == null || "); 5043Writer.Write(typeof(XmlConvert).FullName); 5044Writer.WriteLine(".ToBoolean(root)) break;"); 5045Writer.WriteLine("ReadReferencedElement();"); 5046Writer.WriteLine("Reader.MoveToContent();"); 5052Writer.Write(value ? "true" : "false"); 5057Writer.Write(typeof(ArrayList).FullName); 5058Writer.Write(" "); 5059Writer.Write(source); 5060Writer.Write(" = new "); 5061Writer.Write(typeof(ArrayList).FullName); 5062Writer.WriteLine("();"); 5064Writer.Write(typeof(ArrayList).FullName); 5065Writer.Write(" "); 5066Writer.Write(source); 5067Writer.Write("IsObject = new "); 5068Writer.Write(typeof(ArrayList).FullName); 5069Writer.WriteLine("();"); 5074Writer.WriteLine("int isObjectIndex = 0;"); 5075Writer.Write("foreach (object obj in "); 5076Writer.Write(listSource); 5077Writer.WriteLine(") {"); 5078Writer.Indent++; 5079Writer.WriteLine("bool isReferenced = true;"); 5080Writer.Write("bool isObject = (bool)"); 5081Writer.Write(listSource); 5082Writer.WriteLine("IsObject[isObjectIndex++];"); 5083Writer.WriteLine("object refObj = isObject ? obj : GetTarget((string)obj);"); 5084Writer.WriteLine("if (refObj == null) continue;"); 5085Writer.Write(typeof(Type).FullName); 5086Writer.WriteLine(" refObjType = refObj.GetType();"); 5087Writer.WriteLine("string refObjId = null;"); 5091Writer.WriteLine("if (isObject && isReferenced) Referenced(refObj); // need to mark this obj as ref'd since we didn't do GetTarget"); 5092Writer.Indent--; 5093Writer.WriteLine("}"); 5098Writer.Write("if (Reader.GetAttribute(\"root\", \""); 5099Writer.Write(Soap.Encoding); 5100Writer.WriteLine("\") == \"0\") {"); 5101Writer.Indent++; 5102Writer.WriteLine(source); 5103Writer.Indent--; 5104Writer.WriteLine("}"); 5113Writer.Write(useReflection ? "object" : fullTypeName); 5114Writer.Write(" "); 5115Writer.Write(local); 5116Writer.WriteLine(";"); 5120Writer.WriteLine("try {"); 5121Writer.Indent++; 5123Writer.Write(local); 5124Writer.Write(" = "); 5125Writer.Write(RaCodeGen.GetStringForCreateInstance(fullTypeName, useReflection, mapping.TypeDesc.CannotNew, true)); 5126Writer.WriteLine(";"); 5130Writer.Indent++; 5131Writer.Write("throw CreateInaccessibleConstructorException("); 5133Writer.WriteLine(");"); 5136Writer.Indent++; 5138Writer.Write("throw CreateCtorHasSecurityException("); 5140Writer.WriteLine(");"); 5142Writer.Indent--; 5143Writer.WriteLine("}"); 5149Writer.Indent--; 5150Writer.WriteLine("}"); 5151Writer.Write("catch ("); 5152Writer.Write(exceptionType.FullName); 5153Writer.WriteLine(") {"); 5159Writer.Indent++; 5160Writer.Write("throw CreateInvalidCastException("); 5161Writer.Write(RaCodeGen.GetStringForTypeof(typeDesc.CSharpName, typeDesc.UseReflection)); 5162Writer.Write(", "); 5163Writer.Write(source); 5165Writer.WriteLine(", null);"); 5168Writer.Write(", (string)"); 5169Writer.Write(id); 5170Writer.WriteLine(");"); 5172Writer.Indent--; 5173Writer.WriteLine("}");
System\Xml\Serialization\XmlSerializationWriter.cs (743)
2297Writer.Write(Access); 2298Writer.Write(" class "); 2299Writer.Write(ClassName); 2300Writer.Write(" : "); 2301Writer.Write(typeof(System.Xml.Serialization.XmlSerializationWriter).FullName); 2302Writer.WriteLine(" {"); 2303Writer.Indent++; 2356Writer.Indent--; 2357Writer.WriteLine("}"); 2377Writer.WriteLine(); 2378Writer.WriteLine("protected override void InitCallbacks() {"); 2379Writer.Indent++; 2390Writer.Write("AddWriteCallback("); 2391Writer.Write(RaCodeGen.GetStringForTypeof(typeMapping.TypeDesc.CSharpName, typeMapping.TypeDesc.UseReflection)); 2392Writer.Write(", "); 2394Writer.Write(", "); 2396Writer.Write(", new "); 2397Writer.Write(typeof(System.Xml.Serialization.XmlSerializationWriteCallback).FullName); 2398Writer.Write("(this."); 2399Writer.Write(methodName); 2400Writer.WriteLine("));"); 2405Writer.Indent--; 2406Writer.WriteLine("}"); 2416Writer.WriteLine(" {"); 2417Writer.Indent++; 2420Writer.Write(nullable ? ("WriteNullableQualifiedName" + suffix) : "WriteElementQualifiedName"); 2421Writer.Write("("); 2425Writer.Write(", "); 2428Writer.Write(", "); 2429Writer.Write(source); 2433Writer.Write(", new System.Xml.XmlQualifiedName("); 2435Writer.Write(", "); 2437Writer.Write(")"); 2440Writer.WriteLine(");"); 2444Writer.Indent--; 2445Writer.WriteLine("}"); 2458Writer.Write(methodName); 2459Writer.Write("("); 2460Writer.Write(source); 2461Writer.Write(")"); 2468Writer.Write(source); 2474Writer.Write(typeof(XmlConvert).FullName); 2475Writer.Write(".ToString(("); 2476Writer.Write(typeDesc.CSharpName); 2477Writer.Write(")"); 2478Writer.Write(source); 2479Writer.Write(")"); 2483Writer.Write("From"); 2484Writer.Write(typeDesc.FormatterName); 2485Writer.Write("("); 2486Writer.Write(source); 2487Writer.Write(")"); 2506Writer.Write("if ("); 2508Writer.Write(ReflectionAwareCodeGen.GetStringForEnumLongValue(source, mapping.TypeDesc.UseReflection)); 2510Writer.Write(source); 2511Writer.Write(" != "); 2514Writer.Write("("); 2521Writer.WriteLine(" | "); 2522Writer.Write(RaCodeGen.GetStringForEnumCompare((EnumMapping)mapping, values[i], mapping.TypeDesc.UseReflection)); 2524Writer.Write(")"); 2528Writer.Write(RaCodeGen.GetStringForEnumCompare((EnumMapping)mapping, (string)defaultValue!, mapping.TypeDesc.UseReflection)); 2530Writer.Write(")"); 2536Writer.WriteLine(" {"); 2537Writer.Indent++; 2540Writer.Write(method); 2541Writer.Write("("); 2545Writer.Write(", "); 2549Writer.Write(", "); 2562Writer.Write(", new System.Xml.XmlQualifiedName("); 2564Writer.Write(", "); 2566Writer.Write(")"); 2569Writer.WriteLine(");"); 2573Writer.Indent--; 2574Writer.WriteLine("}"); 2580Writer.Write(methodName); 2581Writer.Write("("); 2583Writer.Write(", "); 2586Writer.Write("null"); 2592Writer.WriteLine(");"); 2597Writer.Write(methodName); 2598Writer.Write("("); 2600Writer.Write(", "); 2603Writer.Write("null"); 2609Writer.Write(", null, "); 2611Writer.Write("true"); 2613Writer.Write("false"); 2614Writer.WriteLine(");"); 2624Writer.WriteLine("WriteEndElement();"); 2628Writer.Write("WriteEndElement("); 2629Writer.Write(source); 2630Writer.WriteLine(");"); 2657Writer.WriteLine(); 2658Writer.Write("public void "); 2659Writer.Write(methodName); 2660Writer.WriteLine("(object[] p) {"); 2661Writer.Indent++; 2663Writer.WriteLine("WriteStartDocument();"); 2667Writer.WriteLine("TopLevelElement();"); 2673Writer.WriteLine("int pLength = p.Length;"); 2684Writer.Write("if (pLength > "); 2685Writer.Write(xmlnsMember.ToString(CultureInfo.InvariantCulture)); 2686Writer.WriteLine(") {"); 2687Writer.Indent++; 2689Writer.Indent--; 2690Writer.WriteLine("}"); 2718Writer.Write("if (pLength > "); 2719Writer.Write(index); 2720Writer.WriteLine(") {"); 2721Writer.Indent++; 2725Writer.Write("if (pLength <= "); 2726Writer.Write(specifiedPosition.ToString(CultureInfo.InvariantCulture)); 2727Writer.Write(" || "); 2728Writer.Write(specifiedSource); 2729Writer.WriteLine(") {"); 2730Writer.Indent++; 2737Writer.Indent--; 2738Writer.WriteLine("}"); 2741Writer.Indent--; 2742Writer.WriteLine("}"); 2773Writer.Write("if (pLength > "); 2774Writer.Write(index); 2775Writer.WriteLine(") {"); 2776Writer.Indent++; 2780Writer.Write("if (pLength <= "); 2781Writer.Write(specifiedPosition.ToString(CultureInfo.InvariantCulture)); 2782Writer.Write(" || "); 2783Writer.Write(specifiedSource); 2784Writer.WriteLine(") {"); 2785Writer.Indent++; 2812Writer.Write("WriteRpcResult("); 2814Writer.Write(", "); 2816Writer.WriteLine(");"); 2824Writer.Indent--; 2825Writer.WriteLine("}"); 2828Writer.Indent--; 2829Writer.WriteLine("}"); 2841Writer.Write("if (pLength > "); 2842Writer.Write(mapping.Members.Length.ToString(CultureInfo.InvariantCulture)); 2843Writer.WriteLine(") {"); 2844Writer.Indent++; 2848Writer.Indent--; 2849Writer.WriteLine("}"); 2851Writer.WriteLine("WriteReferencedElements();"); 2853Writer.Indent--; 2854Writer.WriteLine("}"); 2864Writer.WriteLine(); 2865Writer.Write("public void "); 2866Writer.Write(methodName); 2867Writer.WriteLine("(object o) {"); 2868Writer.Indent++; 2870Writer.WriteLine("WriteStartDocument();"); 2872Writer.WriteLine("if (o == null) {"); 2873Writer.Indent++; 2883Writer.WriteLine("return;"); 2884Writer.Indent--; 2885Writer.WriteLine("}"); 2889Writer.WriteLine("TopLevelElement();"); 2896Writer.WriteLine("WriteReferencedElements();"); 2898Writer.Indent--; 2899Writer.WriteLine("}"); 2911Writer.WriteLine(); 2915Writer.Write("void "); 2916Writer.Write(methodName); 2917Writer.WriteLine("(object e) {"); 2922Writer.Write("string "); 2923Writer.Write(methodName); 2924Writer.Write("("); 2925Writer.Write(mapping.TypeDesc.UseReflection ? "object" : fullTypeName); 2926Writer.WriteLine(" v) {"); 2928Writer.Indent++; 2929Writer.WriteLine("string s = null;"); 2936Writer.WriteLine($"switch ({ReflectionAwareCodeGen.GetStringForEnumLongValue("v", mapping.TypeDesc.UseReflection)} ){{"); 2938Writer.WriteLine("switch (v) {"); 2939Writer.Indent++; 2946Writer.Write("s = "); 2948Writer.WriteLine("; break;"); 2956Writer.Write("default: s = FromEnum("); 2957Writer.Write(ReflectionAwareCodeGen.GetStringForEnumLongValue("v", mapping.TypeDesc.UseReflection)); 2958Writer.Write(", new string[] {"); 2959Writer.Indent++; 2964Writer.WriteLine(", "); 2967Writer.Write("}, new "); 2968Writer.Write(typeof(long).FullName); 2969Writer.Write("[] {"); 2975Writer.WriteLine(", "); 2976Writer.Write("(long)"); 2978Writer.Write(c.Value.ToString(CultureInfo.InvariantCulture)); 2981Writer.Write(fullTypeName); 2982Writer.Write(".@"); 2984Writer.Write(c.Name); 2987Writer.Indent--; 2988Writer.Write("}, "); 2990Writer.WriteLine("); break;"); 2994Writer.Write("default: throw CreateInvalidEnumValueException("); 2995Writer.Write(ReflectionAwareCodeGen.GetStringForEnumLongValue("v", mapping.TypeDesc.UseReflection)); 2996Writer.Write(".ToString(System.Globalization.CultureInfo.InvariantCulture), "); 2998Writer.WriteLine(");"); 3000Writer.Indent--; 3001Writer.WriteLine("}"); 3005Writer.Write("WriteXsiType("); 3007Writer.Write(", "); 3009Writer.WriteLine(");"); 3010Writer.WriteLine("Writer.WriteString(s);"); 3014Writer.WriteLine("return s;"); 3016Writer.Indent--; 3017Writer.WriteLine("}"); 3025Writer.Write("if ("); 3027Writer.WriteLine(") {"); 3028Writer.Indent++; 3037Writer.Write(methodName); 3038Writer.Write("(n, ns,"); 3039if (!derived.TypeDesc.UseReflection) Writer.Write($"({fullTypeName})"); 3040Writer.Write("o"); 3042Writer.Write(", isNullable"); 3043Writer.Write(", true"); 3044Writer.WriteLine(");"); 3045Writer.WriteLine("return;"); 3046Writer.Indent--; 3047Writer.WriteLine("}"); 3064Writer.Write("if ("); 3066Writer.WriteLine(") {"); 3067Writer.Indent++; 3075Writer.WriteLine("Writer.WriteStartElement(n, ns);"); 3076Writer.Write("WriteXsiType("); 3078Writer.Write(", "); 3080Writer.WriteLine(");"); 3081Writer.Write("Writer.WriteString("); 3082Writer.Write(methodName); 3083Writer.Write("("); 3084if (!mapping.TypeDesc.UseReflection) Writer.Write($"({fullTypeName})"); 3085Writer.WriteLine("o));"); 3086Writer.WriteLine("Writer.WriteEndElement();"); 3087Writer.WriteLine("return;"); 3088Writer.Indent--; 3089Writer.WriteLine("}"); 3096Writer.Write("if ("); 3101Writer.WriteLine(") {"); 3102Writer.Indent++; 3104Writer.WriteLine("Writer.WriteStartElement(n, ns);"); 3105Writer.Write("WriteXsiType("); 3107Writer.Write(", "); 3109Writer.WriteLine(");"); 3113Writer.WriteLine("Writer.WriteEndElement();"); 3114Writer.WriteLine("return;"); 3115Writer.Indent--; 3116Writer.WriteLine("}"); 3128Writer.WriteLine(); 3129Writer.Write("void "); 3130Writer.Write(methodName); 3136Writer.WriteLine("(object s) {"); 3137Writer.Indent++; 3142Writer.Write("(string n, string ns, "); 3143Writer.Write(mapping.TypeDesc.UseReflection ? "object" : fullTypeName); 3144Writer.Write(" o"); 3146Writer.Write(", bool isNullable"); 3147Writer.WriteLine(", bool needType) {"); 3148Writer.Indent++; 3151Writer.WriteLine("if ((object)o == null) {"); 3152Writer.Indent++; 3153Writer.WriteLine("if (isNullable) WriteNullTagLiteral(n, ns);"); 3154Writer.WriteLine("return;"); 3155Writer.Indent--; 3156Writer.WriteLine("}"); 3158Writer.WriteLine("if (!needType) {"); 3159Writer.Indent++; 3161Writer.Write(typeof(Type).FullName); 3162Writer.WriteLine(" t = o.GetType();"); 3163Writer.Write("if ("); 3165Writer.WriteLine(") {"); 3166Writer.WriteLine("}"); 3167Writer.WriteLine("else {"); 3168Writer.Indent++; 3175Writer.WriteLine("WriteTypedPrimitive(n, ns, o, true);"); 3176Writer.WriteLine("return;"); 3180Writer.WriteLine("throw CreateUnknownTypeException(o);"); 3182Writer.Indent--; 3183Writer.WriteLine("}"); 3184Writer.Indent--; 3185Writer.WriteLine("}"); 3192Writer.WriteLine("EscapeName = false;"); 3211Writer.Write("WriteStartElement(n, ns, o, false, "); 3213Writer.Write("null"); 3215Writer.Write(xmlnsSource); 3217Writer.WriteLine(");"); 3220Writer.Write("if (needType) WriteXsiType("); 3222Writer.Write(", "); 3224Writer.WriteLine(");"); 3239Writer.Write("if ("); 3242Writer.Write(methodInvoke); 3243Writer.WriteLine(") {"); 3244Writer.Indent++; 3248Writer.Write("if ("); 3251Writer.Write(memberGet); 3252Writer.WriteLine(") {"); 3253Writer.Indent++; 3259Writer.Indent--; 3260Writer.WriteLine("}"); 3264Writer.Indent--; 3265Writer.WriteLine("}"); 3280Writer.Write("if ("); 3283Writer.Write(methodInvoke); 3284Writer.WriteLine(") {"); 3285Writer.Indent++; 3289Writer.Write("if ("); 3292Writer.Write(memberGet); 3293Writer.WriteLine(") {"); 3294Writer.Indent++; 3307Writer.Indent--; 3308Writer.WriteLine("}"); 3312Writer.Indent--; 3313Writer.WriteLine("}"); 3321Writer.Indent--; 3322Writer.WriteLine("}"); 3340Writer.WriteLine("{"); 3341Writer.Indent++; 3346Writer.WriteLine("if (a != null) {"); 3347Writer.Indent++; 3353Writer.Write("Writer.WriteStartAttribute(null, "); 3355Writer.Write(", "); 3363Writer.Write("null"); 3365Writer.WriteLine(");"); 3369Writer.Write(typeof(StringBuilder).FullName); 3370Writer.Write(" sb = new "); 3371Writer.Write(typeof(StringBuilder).FullName); 3372Writer.WriteLine("();"); 3379Writer.Write(" e = "); 3380Writer.Write(typeof(IEnumerator).FullName); 3383Writer.Write("(("); 3384Writer.Write(typeof(IEnumerable).FullName); 3385Writer.WriteLine(").GetEnumerator();"); 3392Writer.Write("("); 3393Writer.Write(typeof(IEnumerator).FullName); 3394Writer.Write(")"); 3395Writer.Write(RaCodeGen.GetReflectionVariable(memberTypeDesc.CSharpName, "System.Collections.Generic.IEnumerable*")); 3396Writer.WriteLine(".Invoke(a, new object[0]);"); 3400Writer.Write("((System.Collections.Generic.IEnumerable<"); 3401Writer.Write(arrayElementTypeDesc.CSharpName); 3402Writer.WriteLine(">)a).GetEnumerator();"); 3409Writer.Write("("); 3410Writer.Write(typeof(IEnumerator).FullName); 3411Writer.Write(")"); 3413Writer.Write(RaCodeGen.GetStringForMethodInvoke("a", memberTypeDesc.CSharpName, "GetEnumerator", memberTypeDesc.UseReflection)); 3414Writer.WriteLine(";"); 3416Writer.WriteLine("if (e != null)"); 3417Writer.WriteLine("while (e.MoveNext()) {"); 3418Writer.Indent++; 3425Writer.Write("for (int i = 0; i < "); 3428Writer.WriteLine("a.Length; i++) {"); 3432Writer.Write("(("); 3433Writer.Write(typeof(ICollection).FullName); 3434Writer.WriteLine(")a).Count; i++) {"); 3436Writer.Indent++; 3445Writer.WriteLine("if (i != 0) Writer.WriteString(\" \");"); 3446Writer.Write("WriteValue("); 3450Writer.WriteLine("if (i != 0) sb.Append(\" \");"); 3451Writer.Write("sb.Append("); 3457Writer.WriteLine(");"); 3463Writer.Indent--; 3464Writer.WriteLine("}"); 3470Writer.WriteLine("Writer.WriteEndAttribute();"); 3474Writer.WriteLine("if (sb.Length != 0) {"); 3475Writer.Indent++; 3477Writer.Write("WriteAttribute("); 3479Writer.Write(", "); 3484Writer.Write(", "); 3486Writer.WriteLine("sb.ToString());"); 3487Writer.Indent--; 3488Writer.WriteLine("}"); 3494Writer.Indent--; 3495Writer.WriteLine("}"); 3497Writer.Indent--; 3498Writer.WriteLine("}"); 3513Writer.Write("WriteXmlAttribute("); 3514Writer.Write(source); 3515Writer.Write(", "); 3516Writer.Write(parent); 3517Writer.WriteLine(");"); 3544Writer.WriteLine("{"); 3545Writer.Indent++; 3550Writer.WriteLine("if (a != null) {"); 3551Writer.Indent++; 3559Writer.WriteLine("if (c == null || c.Length < a.Length) {"); 3560Writer.Indent++; 3561Writer.Write("throw CreateInvalidChoiceIdentifierValueException("); 3563Writer.Write(", "); 3565Writer.Write(");"); 3566Writer.Indent--; 3567Writer.WriteLine("}"); 3573Writer.Indent--; 3574Writer.WriteLine("}"); 3576Writer.Indent--; 3577Writer.WriteLine("}"); 3587Writer.Write(typeof(IEnumerator).FullName); 3588Writer.Write(" e = "); 3591Writer.Write("(("); 3592Writer.Write(typeof(IEnumerable).FullName); 3593Writer.Write(")"); 3594Writer.Write(arrayName); 3595Writer.WriteLine(").GetEnumerator();"); 3602Writer.Write("("); 3603Writer.Write(typeof(IEnumerator).FullName); 3604Writer.Write(")"); 3605Writer.Write(RaCodeGen.GetReflectionVariable(arrayTypeDesc.CSharpName, "System.Collections.Generic.IEnumerable*")); 3606Writer.Write(".Invoke("); 3607Writer.Write(arrayName); 3608Writer.WriteLine(", new object[0]);"); 3612Writer.Write("((System.Collections.Generic.IEnumerable<"); 3613Writer.Write(arrayElementTypeDesc.CSharpName); 3614Writer.Write(">)"); 3615Writer.Write(arrayName); 3616Writer.WriteLine(").GetEnumerator();"); 3623Writer.Write("("); 3624Writer.Write(typeof(IEnumerator).FullName); 3625Writer.Write(")"); 3627Writer.Write(RaCodeGen.GetStringForMethodInvoke(arrayName, arrayTypeDesc.CSharpName, "GetEnumerator", arrayTypeDesc.UseReflection)); 3628Writer.WriteLine(";"); 3630Writer.WriteLine("if (e != null)"); 3631Writer.WriteLine("while (e.MoveNext()) {"); 3632Writer.Indent++; 3639Writer.Write("for (int i"); 3640Writer.Write(arrayName); 3641Writer.Write(" = 0; i"); 3642Writer.Write(arrayName); 3643Writer.Write(" < "); 3646Writer.Write(arrayName); 3647Writer.Write(".Length"); 3651Writer.Write("(("); 3652Writer.Write(typeof(ICollection).FullName); 3653Writer.Write(")"); 3654Writer.Write(arrayName); 3655Writer.Write(").Count"); 3657Writer.Write("; i"); 3658Writer.Write(arrayName); 3659Writer.WriteLine("++) {"); 3660Writer.Indent++; 3678Writer.Indent--; 3679Writer.WriteLine("}"); 3703Writer.Write("if ((object)("); 3704Writer.Write(source); 3705Writer.Write(") != null)"); 3707Writer.WriteLine("{"); 3708Writer.Indent++; 3738if (wroteFirstIf) Writer.Write("else "); 3740Writer.Write("if ("); 3741Writer.Write(enumUseReflection ? ReflectionAwareCodeGen.GetStringForEnumLongValue(enumSource!, enumUseReflection) : enumSource); 3742Writer.Write(" == "); 3743Writer.Write(enumFullName); 3746Writer.Write(" && ((object)("); 3747Writer.Write(source); 3748Writer.Write(") != null)"); 3750Writer.WriteLine(") {"); 3751Writer.Indent++; 3759Writer.Indent--; 3760Writer.WriteLine("}"); 3767if (wroteFirstIf) Writer.Write("else "); 3769Writer.Write("if ("); 3771Writer.WriteLine(") {"); 3772Writer.Indent++; 3777Writer.Indent--; 3778Writer.WriteLine("}"); 3783if (elements.Length - anyCount > 0) Writer.Write("else "); 3787Writer.Write("if ("); 3788Writer.Write(source); 3789Writer.Write(" is "); 3790Writer.Write(fullTypeName); 3791Writer.WriteLine(") {"); 3792Writer.Indent++; 3794Writer.Write(fullTypeName); 3795Writer.Write(" elem = ("); 3796Writer.Write(fullTypeName); 3797Writer.Write(")"); 3798Writer.Write(source); 3799Writer.WriteLine(";"); 3805if (c++ > 0) Writer.Write("else "); 3813Writer.Write("if ("); 3814Writer.Write(enumUseReflection ? ReflectionAwareCodeGen.GetStringForEnumLongValue(enumSource!, enumUseReflection) : enumSource); 3815Writer.Write(" == "); 3816Writer.Write(enumFullName); 3819Writer.Write(" && ((object)("); 3820Writer.Write(source); 3821Writer.Write(") != null)"); 3823Writer.WriteLine(") {"); 3824Writer.Indent++; 3826Writer.Write("if (elem.Name == "); 3828Writer.Write(" && elem.NamespaceURI == "); 3830Writer.WriteLine(") {"); 3831Writer.Indent++; 3836Writer.Indent--; 3837Writer.WriteLine("}"); 3838Writer.WriteLine("else {"); 3839Writer.Indent++; 3841Writer.WriteLine("// throw Value '{0}' of the choice identifier '{1}' does not match element '{2}' from namespace '{3}'."); 3843Writer.Write("throw CreateChoiceIdentifierValueException("); 3845Writer.Write(", "); 3847Writer.WriteLine(", elem.Name, elem.NamespaceURI);"); 3848Writer.Indent--; 3849Writer.WriteLine("}"); 3851Writer.Indent--; 3852Writer.WriteLine("}"); 3856Writer.WriteLine("else {"); 3857Writer.Indent++; 3865Writer.WriteLine("throw CreateUnknownAnyElementException(elem.Name, elem.NamespaceURI);"); 3869Writer.Indent--; 3870Writer.WriteLine("}"); 3872Writer.Indent--; 3873Writer.WriteLine("}"); 3881Writer.Write("else "); 3882Writer.Write("if ("); 3884Writer.WriteLine(") {"); 3885Writer.Indent++; 3890Writer.Indent--; 3891Writer.WriteLine("}"); 3903Writer.Write("else "); 3907Writer.Write(" if ((object)("); 3908Writer.Write(source); 3909Writer.Write(") != null)"); 3912Writer.WriteLine("{"); 3913Writer.Indent++; 3915Writer.Write("throw CreateUnknownTypeException("); 3916Writer.Write(source); 3917Writer.WriteLine(");"); 3919Writer.Indent--; 3920Writer.WriteLine("}"); 3922Writer.Indent--; 3923Writer.WriteLine("}"); 3931Writer.Write("WriteValue("); 3940Writer.WriteLine(");"); 3947Writer.Write(source); 3948Writer.WriteLine(".WriteTo(Writer);"); 3963Writer.Write("if ("); 3964Writer.Write(source); 3965Writer.WriteLine(" != null) {"); 3966Writer.Indent++; 3974Writer.Indent--; 3975Writer.WriteLine("}"); 3978Writer.WriteLine("else {"); 3979Writer.Indent++; 3981Writer.Indent--; 3982Writer.WriteLine("}"); 3989Writer.Write("WritePotentiallyReferencingElement("); 3991Writer.Write(", "); 3993Writer.Write(", "); 3994Writer.Write(source); 3997Writer.Write(", "); 3998Writer.Write(RaCodeGen.GetStringForTypeof(arrayMapping.TypeDesc!.CSharpName, arrayMapping.TypeDesc.UseReflection)); 3999Writer.Write(", true, "); 4003Writer.Write(", null, false, "); 4006Writer.WriteLine(");"); 4014Writer.WriteLine("{"); 4015Writer.Indent++; 4025Writer.Write("if ("); 4026Writer.Write(elementArrayName); 4027Writer.Write(" != null)"); 4029Writer.WriteLine("{"); 4030Writer.Indent++; 4033Writer.Write("for (int "); 4034Writer.Write(arrayIndex); 4035Writer.Write(" = 0; "); 4036Writer.Write(arrayIndex); 4037Writer.Write(" < "); 4041Writer.Write(elementArrayName); 4042Writer.Write(".Length"); 4046Writer.Write("(("); 4047Writer.Write(typeof(ICollection).FullName); 4048Writer.Write(")"); 4049Writer.Write(elementArrayName); 4050Writer.Write(").Count"); 4052Writer.Write("; "); 4053Writer.Write(arrayIndex); 4054Writer.WriteLine("++) {"); 4055Writer.Indent++; 4061Writer.Indent--; 4062Writer.WriteLine("}"); 4064Writer.Indent--; 4065Writer.WriteLine("}"); 4066Writer.Indent--; 4067Writer.WriteLine("}"); 4072Writer.WriteLine("{"); 4073Writer.Indent++; 4083Writer.Write("if ("); 4084Writer.Write(arrayName); 4085Writer.Write(" != null)"); 4087Writer.WriteLine("{"); 4088Writer.Indent++; 4093Writer.Indent--; 4094Writer.WriteLine("}"); 4095Writer.Indent--; 4096Writer.WriteLine("}"); 4104Writer.Write("Writer.WriteStartElement("); 4106Writer.Write(", "); 4108Writer.WriteLine(");"); 4109Writer.Write(methodName); 4110Writer.Write("("); 4111Writer.Write(source); 4112Writer.WriteLine(");"); 4136Writer.Write("WritePotentiallyReferencingElement("); 4138Writer.Write(", "); 4140Writer.Write(", "); 4141Writer.Write(source); 4144Writer.Write(", "); 4145Writer.Write(RaCodeGen.GetStringForTypeof(structMapping.TypeDesc!.CSharpName, structMapping.TypeDesc.UseReflection)); 4146Writer.Write(", true, "); 4150Writer.Write(", null, false, "); 4162Writer.Write(methodName); 4163Writer.Write("("); 4165Writer.Write(", "); 4167Writer.Write("null"); 4172Writer.Write(", "); 4173Writer.Write(source); 4176Writer.Write(", "); 4179Writer.Write(", false"); 4181Writer.WriteLine(");"); 4192Writer.Write("if (("); 4193Writer.Write(source); 4194Writer.Write(") is "); 4195Writer.Write(typeof(XmlNode).FullName); 4196Writer.Write(" || "); 4197Writer.Write(source); 4198Writer.Write(" == null"); 4199Writer.WriteLine(") {"); 4200Writer.Indent++; 4204Writer.Indent--; 4205Writer.WriteLine("}"); 4206Writer.WriteLine("else {"); 4207Writer.Indent++; 4209Writer.Write("throw CreateInvalidAnyTypeException("); 4210Writer.Write(source); 4211Writer.WriteLine(");"); 4213Writer.Indent--; 4214Writer.WriteLine("}"); 4225Writer.Write(func); 4226Writer.Write("(("); 4227Writer.Write(cast.FullName); 4228Writer.Write(")"); 4229Writer.Write(source); 4230Writer.Write(", "); 4232Writer.Write(", "); 4234Writer.Write(", "); 4236Writer.Write(", "); 4238Writer.WriteLine(");"); 4244Writer.Write("if ("); 4249Writer.Write("("); 4250Writer.Write(source); 4252Writer.Write(" == null) || ("); 4254Writer.Write(" != null) && ("); 4255Writer.Write(source); 4256Writer.Write(".Length != 0)"); 4260Writer.Write("!"); 4261Writer.Write(source); 4262Writer.Write(".Equals("); 4265Writer.Write(")"); 4269Writer.Write(source); 4270Writer.Write(" != "); 4274Writer.Write(")"); 4279Writer.Write("if (((object)"); 4280Writer.Write(source); 4281Writer.Write(") != null && !("); 4283Writer.Write(")) throw CreateMismatchChoiceException("); 4285Writer.Write(", "); 4287Writer.Write(", "); 4289Writer.WriteLine(");"); 4294Writer.Write("if ((object)("); 4295Writer.Write(source); 4296Writer.WriteLine(") == null) {"); 4297Writer.Indent++; 4299Writer.Indent--; 4300Writer.WriteLine("}"); 4301Writer.WriteLine("else {"); 4302Writer.Indent++; 4309Writer.Write("null"); 4322Writer.Write('\''); 4325Writer.Write("\'"); 4327Writer.Write(ch); 4328Writer.Write('\''); 4331Writer.Write(((int)value).ToString(null, NumberFormatInfo.InvariantInfo)); 4336Writer.Write("System.Double.NaN"); 4340Writer.Write("System.Double.PositiveInfinity"); 4344Writer.Write("System.Double.NegativeInfinity"); 4348Writer.Write(((double)value).ToString("R", NumberFormatInfo.InvariantInfo)); 4352Writer.Write((bool)value ? "true" : "false"); 4355Writer.Write("("); 4356Writer.Write(type.FullName); 4357Writer.Write(")"); 4358Writer.Write("("); 4359Writer.Write(Convert.ToString(value, NumberFormatInfo.InvariantInfo)); 4360Writer.Write(")"); 4366Writer.Write("System.Single.NaN"); 4370Writer.Write("System.Single.PositiveInfinity"); 4374Writer.Write("System.Single.NegativeInfinity"); 4378Writer.Write(((float)value).ToString("R", NumberFormatInfo.InvariantInfo)); 4379Writer.Write("f"); 4384Writer.Write(((decimal)value).ToString(null, NumberFormatInfo.InvariantInfo)); 4385Writer.Write("m"); 4389Writer.Write(" new "); 4390Writer.Write(type.FullName); 4391Writer.Write("("); 4392Writer.Write(((DateTime)value).Ticks.ToString(CultureInfo.InvariantCulture)); 4393Writer.Write(")"); 4397Writer.Write(" new "); 4398Writer.Write(type.FullName); 4399Writer.Write("("); 4400Writer.Write(((DateTimeOffset)value).Ticks.ToString(CultureInfo.InvariantCulture)); 4401Writer.Write(", new "); 4402Writer.Write(((DateTimeOffset)value).Offset.GetType().FullName); 4403Writer.Write("("); 4404Writer.Write(((DateTimeOffset)value).Offset.Ticks.ToString(CultureInfo.InvariantCulture)); 4405Writer.Write("))"); 4409Writer.Write(" new "); 4410Writer.Write(type.FullName); 4411Writer.Write("("); 4412Writer.Write(((TimeSpan)value).Ticks.ToString(CultureInfo.InvariantCulture)); 4413Writer.Write(")"); 4417Writer.Write(" new "); 4418Writer.Write(type.FullName); 4419Writer.Write("("); 4420Writer.Write(((DateOnly)value).Year.ToString(CultureInfo.InvariantCulture)); 4421Writer.Write(", "); 4422Writer.Write(((DateOnly)value).Month.ToString(CultureInfo.InvariantCulture)); 4423Writer.Write(", "); 4424Writer.Write(((DateOnly)value).Day.ToString(CultureInfo.InvariantCulture)); 4425Writer.Write(")"); 4429Writer.Write(" new "); 4430Writer.Write(type.FullName); 4431Writer.Write("("); 4432Writer.Write(((TimeOnly)value).Ticks.ToString(CultureInfo.InvariantCulture)); 4433Writer.Write(")"); 4439Writer.Write(((int)value).ToString(null, NumberFormatInfo.InvariantInfo)); 4452Writer.Write("WriteNamespaceDeclarations("); 4453Writer.Write(source); 4454Writer.WriteLine(");"); 4470Writer.Write("for (int i = "); 4471Writer.Write(loopStartSource); 4472Writer.Write("; i < "); 4473Writer.Write(loopEndSource); 4474Writer.WriteLine("; i++) {"); 4475Writer.Indent++; 4476Writer.WriteLine("if (p[i] != null) {"); 4477Writer.Indent++; 4478Writer.WriteLine("WritePotentiallyReferencingElement(null, null, p[i], p[i].GetType(), true, false);"); 4479Writer.Indent--; 4480Writer.WriteLine("}"); 4481Writer.Indent--; 4482Writer.WriteLine("}");