4 writes to _ilg
dotnet-svcutil-lib (4)
FrameworkFork\System.Runtime.Serialization\System\Runtime\Serialization\XmlFormatReaderGenerator.cs (4)
91_ilg = new CodeGenerator(); 147_ilg = GenerateCollectionReaderHelper(collectionContract, false /*isGetOnlyCollection*/); 156_ilg = GenerateCollectionReaderHelper(collectionContract, true /*isGetOnlyCollection*/); 163_ilg = new CodeGenerator();
240 references to _ilg
dotnet-svcutil-lib (240)
FrameworkFork\System.Runtime.Serialization\System\Runtime\Serialization\XmlFormatReaderGenerator.cs (240)
95_ilg.BeginMethod("Read" + classContract.StableName.Name + "FromXml", Globals.TypeOfXmlFormatClassReaderDelegate, memberAccessFlag); 111_ilg.Call(_contextArg, XmlFormatGeneratorStatics.AddNewObjectMethod, _objectLocal); 119_ilg.Load(_objectLocal); 127_ilg.ConvertValue(_objectLocal.LocalType, Globals.TypeOfDateTimeOffsetAdapter); 128_ilg.Call(XmlFormatGeneratorStatics.GetDateTimeOffsetMethod); 129_ilg.ConvertValue(Globals.TypeOfDateTimeOffset, _ilg.CurrentMethod.ReturnType); 134_ilg.Call(classContract.GetKeyValuePairMethodInfo); 135_ilg.ConvertValue(Globals.TypeOfKeyValuePair.MakeGenericType(classContract.KeyValuePairGenericArguments), _ilg.CurrentMethod.ReturnType); 139_ilg.ConvertValue(_objectLocal.LocalType, _ilg.CurrentMethod.ReturnType); 142return (XmlFormatClassReaderDelegate)_ilg.EndMethod(); 149_ilg.Load(_objectLocal); 150_ilg.ConvertValue(_objectLocal.LocalType, _ilg.CurrentMethod.ReturnType); 151return (XmlFormatCollectionReaderDelegate)_ilg.EndMethod(); 158return (XmlFormatGetOnlyCollectionReaderDelegate)_ilg.EndMethod(); 169_ilg.BeginMethod("Read" + collectionContract.StableName.Name + "FromXml" + "IsGetOnly", Globals.TypeOfXmlFormatGetOnlyCollectionReaderDelegate, memberAccessFlag); 173_ilg.BeginMethod("Read" + collectionContract.StableName.Name + "FromXml" + string.Empty, Globals.TypeOfXmlFormatCollectionReaderDelegate, memberAccessFlag); 188_collectionContractArg = _ilg.GetArg(4); 189return _ilg; 194_xmlReaderArg = _ilg.GetArg(0); 195_contextArg = _ilg.GetArg(1); 196_memberNamesArg = _ilg.GetArg(2); 197_memberNamespacesArg = _ilg.GetArg(3); 207_objectLocal = _ilg.DeclareLocal(type, "objectDeserialized"); 211_ilg.LoadMember(Globals.TypeOfDBNull.GetField("Value")); 212_ilg.Stloc(_objectLocal); 218_ilg.Ldloca(_objectLocal); 219_ilg.InitObj(type); 223_ilg.New(classContract.GetNonAttributedTypeConstructor()); 224_ilg.Stloc(_objectLocal); 229_ilg.Call(null, XmlFormatGeneratorStatics.GetUninitializedObjectMethod, DataContract.GetIdForInitialization(classContract)); 230_ilg.ConvertValue(Globals.TypeOfObject, type); 231_ilg.Stloc(_objectLocal); 241_ilg.LoadAddress(_objectLocal); 242_ilg.ConvertAddress(_objectLocal.LocalType, _objectType); 243_ilg.Load(_contextArg); 244_ilg.LoadMember(XmlFormatGeneratorStatics.GetStreamingContextMethod); 245_ilg.Call(classContract.OnDeserializing); 255_ilg.LoadAddress(_objectLocal); 256_ilg.ConvertAddress(_objectLocal.LocalType, _objectType); 257_ilg.Load(_contextArg); 258_ilg.LoadMember(XmlFormatGeneratorStatics.GetStreamingContextMethod); 259_ilg.Call(classContract.OnDeserialized); 272_ilg.Call(_contextArg, XmlFormatGeneratorStatics.IncrementItemCountMethod, memberCount); 274LocalBuilder memberIndexLocal = _ilg.DeclareLocal(Globals.TypeOfInt, "memberIndex", -1); 279LocalBuilder requiredIndexLocal = hasRequiredMembers ? _ilg.DeclareLocal(Globals.TypeOfInt, "requiredIndex", firstRequiredMember) : null; 281object forReadElements = _ilg.For(null, null, null); 282_ilg.Call(null, XmlFormatGeneratorStatics.MoveToNextElementMethod, _xmlReaderArg); 283_ilg.IfFalseBreak(forReadElements); 285_ilg.Call(_contextArg, XmlFormatGeneratorStatics.GetMemberIndexWithRequiredMembersMethod, _xmlReaderArg, _memberNamesArg, _memberNamespacesArg, memberIndexLocal, requiredIndexLocal, extensionDataLocal); 287_ilg.Call(_contextArg, XmlFormatGeneratorStatics.GetMemberIndexMethod, _xmlReaderArg, _memberNamesArg, _memberNamespacesArg, memberIndexLocal, extensionDataLocal); 288Label[] memberLabels = _ilg.Switch(memberCount); 290_ilg.EndSwitch(); 291_ilg.EndFor(); 294_ilg.If(requiredIndexLocal, Cmp.LessThan, memberCount); 295_ilg.Call(null, XmlFormatGeneratorStatics.ThrowRequiredMemberMissingExceptionMethod, _xmlReaderArg, memberIndexLocal, requiredIndexLocal, _memberNamesArg); 296_ilg.EndIf(); 309_ilg.Case(memberLabels[memberCount], dataMember.Name); 316_ilg.Set(requiredIndexLocal, nextRequiredIndex); 323_ilg.LoadAddress(_objectLocal); 324_ilg.LoadMember(dataMember.MemberInfo); 325value = _ilg.DeclareLocal(memberType, dataMember.Name + "Value"); 326_ilg.Stloc(value); 327_ilg.Call(_contextArg, XmlFormatGeneratorStatics.StoreCollectionMemberInfoMethod, value); 333_ilg.LoadAddress(_objectLocal); 334_ilg.ConvertAddress(_objectLocal.LocalType, _objectType); 335_ilg.Ldloc(value); 336_ilg.StoreMember(dataMember.MemberInfo); 349_ilg.Set(memberIndexLocal, memberCount); 351_ilg.EndCase(); 381LocalBuilder value = _ilg.DeclareLocal(type, "valueRead"); 393LocalBuilder objectId = _ilg.DeclareLocal(Globals.TypeOfString, "objectIdRead"); 394_ilg.Call(_contextArg, XmlFormatGeneratorStatics.ReadAttributesMethod, _xmlReaderArg); 395_ilg.Call(_contextArg, XmlFormatGeneratorStatics.ReadIfNullOrRefMethod, _xmlReaderArg, type, DataContract.IsTypeSerializable(type)); 396_ilg.Stloc(objectId); 398_ilg.If(objectId, Cmp.EqualTo, Globals.NullObjectId); 401_ilg.LoadAddress(value); 402_ilg.InitObj(value.LocalType); 408_ilg.Load(null); 409_ilg.Stloc(value); 415_ilg.ElseIfIsEmptyString(objectId); 416_ilg.Call(_contextArg, XmlFormatGeneratorStatics.GetObjectIdMethod); 417_ilg.Stloc(objectId); 420_ilg.IfNotIsEmptyString(objectId); 422_ilg.EndIf(); 427value = _ilg.DeclareLocal(type, "innerValueRead"); 432_ilg.Call(_xmlReaderArg, primitiveContract.XmlFormatReaderMethod); 433_ilg.Stloc(value); 435_ilg.Call(_contextArg, XmlFormatGeneratorStatics.AddNewObjectMethod, value); 442_ilg.Else(); 447_ilg.Call(_contextArg, XmlFormatGeneratorStatics.GetExistingObjectMethod, objectId, type, name, ns); 448_ilg.ConvertValue(Globals.TypeOfObject, type); 449_ilg.Stloc(value); 451_ilg.EndIf(); 455_ilg.If(objectId, Cmp.NotEqualTo, Globals.NullObjectId); 457_ilg.EndIf(); 471_ilg.Load(_contextArg); 472_ilg.Load(_xmlReaderArg); 474_ilg.Load(DataContract.GetId(declaredType.TypeHandle)); 475_ilg.Ldtoken(declaredType); 476_ilg.Load(name); 477_ilg.Load(ns); 478_ilg.Call(XmlFormatGeneratorStatics.InternalDeserializeMethod); 480_ilg.ConvertValue(Globals.TypeOfObject, type); 481_ilg.Stloc(value); 487_ilg.LoadAddress(outerValue); 488_ilg.Load(innerValue); 492_ilg.New(type.GetConstructor(new Type[] { innerType })); 495_ilg.Call(outerType.GetConstructor(new Type[] { innerType })); 532_objectLocal = _ilg.DeclareLocal(type, "objectDeserialized"); 537_ilg.Ldloca(_objectLocal); 538_ilg.InitObj(type); 542_ilg.New(constructor); 543_ilg.Stloc(_objectLocal); 544_ilg.Call(_contextArg, XmlFormatGeneratorStatics.AddNewObjectMethod, _objectLocal); 548LocalBuilder size = _ilg.DeclareLocal(Globals.TypeOfInt, "arraySize"); 549_ilg.Call(_contextArg, XmlFormatGeneratorStatics.GetArraySizeMethod); 550_ilg.Stloc(size); 552LocalBuilder objectId = _ilg.DeclareLocal(Globals.TypeOfString, "objectIdRead"); 553_ilg.Call(_contextArg, XmlFormatGeneratorStatics.GetObjectIdMethod); 554_ilg.Stloc(objectId); 560_ilg.IfNot(); 563_ilg.If(size, Cmp.EqualTo, -1); 568growingCollection = _ilg.DeclareLocal(type, "growingCollection"); 569_ilg.NewArray(itemType, 32); 570_ilg.Stloc(growingCollection); 572LocalBuilder i = _ilg.DeclareLocal(Globals.TypeOfInt, "i"); 573object forLoop = _ilg.For(i, 0, Int32.MaxValue); 575_ilg.If(); 576_ilg.Call(_contextArg, XmlFormatGeneratorStatics.IncrementItemCountMethod, 1); 581_ilg.Call(null, ensureArraySizeMethod, growingCollection, i); 582_ilg.Stloc(growingCollection); 583_ilg.StoreArrayElement(growingCollection, i, value); 587_ilg.Else(); 589_ilg.If(); 590_ilg.Break(forLoop); 591_ilg.Else(); 593_ilg.EndIf(); 594_ilg.EndIf(); 596_ilg.EndFor(); 600_ilg.Call(null, trimArraySizeMethod, growingCollection, i); 601_ilg.Stloc(_objectLocal); 602_ilg.Call(_contextArg, XmlFormatGeneratorStatics.AddNewObjectWithIdMethod, objectId, _objectLocal); 604_ilg.Else(); 606_ilg.Call(_contextArg, XmlFormatGeneratorStatics.IncrementItemCountMethod, size); 609_ilg.NewArray(itemType, size); 610_ilg.Stloc(_objectLocal); 611_ilg.Call(_contextArg, XmlFormatGeneratorStatics.AddNewObjectMethod, _objectLocal); 613LocalBuilder j = _ilg.DeclareLocal(Globals.TypeOfInt, "j"); 614_ilg.For(j, 0, size); 616_ilg.If(); 619_ilg.StoreArrayElement(_objectLocal, j, itemValue); 622_ilg.Else(); 624_ilg.EndIf(); 625_ilg.EndFor(); 626_ilg.Call(_contextArg, XmlFormatGeneratorStatics.CheckEndOfArrayMethod, _xmlReaderArg, size, _memberNamesArg, _memberNamespacesArg); 627_ilg.EndIf(); 631_ilg.Else(); 632_ilg.Call(_contextArg, XmlFormatGeneratorStatics.AddNewObjectWithIdMethod, objectId, _objectLocal); 633_ilg.EndIf(); 645_objectLocal = _ilg.DeclareLocal(type, "objectDeserialized"); 646_ilg.Load(_contextArg); 647_ilg.LoadMember(XmlFormatGeneratorStatics.GetCollectionMemberMethod); 648_ilg.ConvertValue(Globals.TypeOfObject, type); 649_ilg.Stloc(_objectLocal); 653_ilg.If(); 654_ilg.If(_objectLocal, Cmp.EqualTo, null); 655_ilg.Call(null, XmlFormatGeneratorStatics.ThrowNullValueReturnedForGetOnlyCollectionExceptionMethod, type); 657_ilg.Else(); 658LocalBuilder size = _ilg.DeclareLocal(Globals.TypeOfInt, "arraySize"); 661_ilg.Load(_objectLocal); 662_ilg.Call(XmlFormatGeneratorStatics.GetArrayLengthMethod); 663_ilg.Stloc(size); 666_ilg.Call(_contextArg, XmlFormatGeneratorStatics.AddNewObjectMethod, _objectLocal); 668LocalBuilder i = _ilg.DeclareLocal(Globals.TypeOfInt, "i"); 669object forLoop = _ilg.For(i, 0, Int32.MaxValue); 671_ilg.If(); 672_ilg.Call(_contextArg, XmlFormatGeneratorStatics.IncrementItemCountMethod, 1); 676_ilg.If(size, Cmp.EqualTo, i); 677_ilg.Call(null, XmlFormatGeneratorStatics.ThrowArrayExceededSizeExceptionMethod, size, type); 678_ilg.Else(); 679_ilg.StoreArrayElement(_objectLocal, i, value); 680_ilg.EndIf(); 684_ilg.Else(); 686_ilg.If(); 687_ilg.Break(forLoop); 688_ilg.Else(); 690_ilg.EndIf(); 691_ilg.EndIf(); 692_ilg.EndFor(); 693_ilg.Call(_contextArg, XmlFormatGeneratorStatics.CheckEndOfArrayMethod, _xmlReaderArg, size, _memberNamesArg, _memberNamespacesArg); 695_ilg.EndIf(); 696_ilg.EndIf(); 734_ilg.Load(_xmlReaderArg); 735_ilg.Load(_contextArg); 736_ilg.Load(_memberNamesArg); 737_ilg.Load(_memberNamespacesArg); 738_ilg.Load(size); 739_ilg.Ldloca(_objectLocal); 740_ilg.Call(typeof(XmlReaderDelegator).GetMethod(readArrayMethod, Globals.ScanAllMembers)); 750_ilg.Call(_contextArg, XmlFormatGeneratorStatics.ResetAttributesMethod); 751LocalBuilder value = _ilg.DeclareLocal(itemType, "valueRead"); 752_ilg.Load(_collectionContractArg); 753_ilg.Call(XmlFormatGeneratorStatics.GetItemContractMethod); 754_ilg.Load(_xmlReaderArg); 755_ilg.Load(_contextArg); 756_ilg.Call(XmlFormatGeneratorStatics.ReadXmlValueMethod); 757_ilg.ConvertValue(Globals.TypeOfObject, itemType); 758_ilg.Stloc(value); 778LocalBuilder pairKey = _ilg.DeclareLocal(keyMember.MemberType, keyMember.Name); 779LocalBuilder pairValue = _ilg.DeclareLocal(valueMember.MemberType, valueMember.Name); 780_ilg.LoadAddress(value); 781_ilg.LoadMember(keyMember.MemberInfo); 782_ilg.Stloc(pairKey); 783_ilg.LoadAddress(value); 784_ilg.LoadMember(valueMember.MemberInfo); 785_ilg.Stloc(pairValue); 787_ilg.Call(collection, collectionContract.AddMethod, pairKey, pairValue); 789_ilg.Pop(); 793_ilg.Call(collection, collectionContract.AddMethod, value); 795_ilg.Pop(); 802_ilg.If(); 803_ilg.Call(_contextArg, XmlFormatGeneratorStatics.SkipUnknownElementMethod, _xmlReaderArg); 804_ilg.Dec(iterator); 805_ilg.Else(); 807_ilg.EndIf(); 812_ilg.Call(_xmlReaderArg, XmlFormatGeneratorStatics.IsStartElementMethod2, nameArg, nsArg); 817_ilg.Call(_xmlReaderArg, XmlFormatGeneratorStatics.IsStartElementMethod0); 822_ilg.Load(_xmlReaderArg); 823_ilg.LoadMember(XmlFormatGeneratorStatics.NodeTypeProperty); 824_ilg.Load(XmlNodeType.EndElement); 825_ilg.Ceq(); 830_ilg.Call(null, XmlFormatGeneratorStatics.CreateUnexpectedStateExceptionMethod, expectedState, _xmlReaderArg); 831_ilg.Throw(); 837_ilg.Load(msg); 846_ilg.Call(XmlFormatGeneratorStatics.CreateSerializationExceptionMethod); 847_ilg.Throw();