public void RegisterWith(IEmittableOperandProvider emittableOperandProvider, MutableFieldInfo field) { ArgumentUtility.CheckNotNull("emittableOperandProvider", emittableOperandProvider); ArgumentUtility.CheckNotNull("field", field); _fieldBuilder.RegisterWith(emittableOperandProvider, field); }
public void AddMapping(MutableFieldInfo mappedField, FieldInfo emittableField) { ArgumentUtility.CheckNotNull("mappedField", mappedField); ArgumentUtility.CheckNotNull("emittableField", emittableField); AddMapping(_mappedFields, mappedField, emittableField); }
public void AddExtensionsField() { _extensionsFieldInfo = _concreteTarget.AddField("__extensions", FieldAttributes.Private, typeof(object[])); new AttributeGenerator().AddDebuggerBrowsableAttribute(_extensionsFieldInfo, DebuggerBrowsableState.Never); _extensionsField = GetFieldExpression(_extensionsFieldInfo); }
public void ConversionSucceeds() { var prop = new MutableFieldInfo(typeof(TestObject <int>).GetTypeInfo().GetField("Value")); var obj = new TestObject <int>(); Action setter = () => prop.SetValue(obj, 3L); setter.ShouldNotThrow(); }
public void ConversionFails() { var prop = new MutableFieldInfo(typeof(TestObject <Guid>).GetTypeInfo().GetField("Value")); var obj = new TestObject <Guid>(); Action setter = () => prop.SetValue(obj, 3.0); setter.ShouldThrow <ArgumentException>(); }
public void AddField(CodeGenerationContext context, MutableFieldInfo field) { ArgumentUtility.CheckNotNull("context", context); ArgumentUtility.CheckNotNull("field", field); var fieldBuilder = context.TypeBuilder.DefineField(field.Name, field.FieldType, field.Attributes); fieldBuilder.RegisterWith(context.EmittableOperandProvider, field); DefineCustomAttributes(fieldBuilder, field); }
private IMutableMember CreateMutableInfo(params CustomAttributeDeclaration[] customAttributes) { var member = new MutableFieldInfo(MutableTypeObjectMother.Create(GetType()), "member", typeof(int), FieldAttributes.Private); foreach (var customAttriubte in customAttributes) { member.AddCustomAttribute(customAttriubte); } return(member); }
public void SetUp() { _delegateProviderMock = new Mock <IDelegateProvider> (MockBehavior.Strict); _provider = new EmittableOperandProvider(_delegateProviderMock.Object); _mutableType = MutableTypeObjectMother.Create(); _mutableGenericParameter = MutableGenericParameterObjectMother.Create(); _mutableField = MutableFieldInfoObjectMother.Create(); _mutableConstructor = MutableConstructorInfoObjectMother.Create(); _mutableMethod = MutableMethodInfoObjectMother.Create(); _emittableType = ReflectionObjectMother.GetSomeType(); }
public void Initialization() { var declaringType = MutableTypeObjectMother.Create(); var name = "abc"; var type = ReflectionObjectMother.GetSomeType(); var attributes = (FieldAttributes)7; var field = new MutableFieldInfo(declaringType, name, type, attributes); Assert.That(field.DeclaringType, Is.SameAs(declaringType)); Assert.That(field.MutableDeclaringType, Is.SameAs(declaringType)); Assert.That(field.Name, Is.EqualTo(name)); Assert.That(field.FieldType, Is.SameAs(type)); Assert.That(field.Attributes, Is.EqualTo(attributes)); Assert.That(field.AddedCustomAttributes, Is.Empty); }
public static void ModifyField(MutableFieldInfo mutableField) { mutableField.AddCustomAttribute(CustomAttributeDeclarationObjectMother.Create()); }
public void AddMapping(MutableFieldInfo mappedField, FieldInfo emittableField) { _emittableOperandProvider.AddMapping(mappedField, emittableField); }
public FieldInfo GetGeneratedField(MutableFieldInfo mutableField) { return((FieldInfo)GetGeneratedMember(mutableField)); }
public void SetUp() { _field = MutableFieldInfoObjectMother.Create(); }