internal CustomAttributeTypedArgumentMirror(Type type, object value) { this.type = type; this.value = value; if (value != null) { this.type = value.GetType(); } else { this.type = typeof(void); } // MS seems to convert arrays into a ReadOnlyCollection if (value is Array) { Array a = (Array)value; Type etype = a.GetType().GetElementType(); CustomAttributeTypedArgumentMirror[] new_value = new CustomAttributeTypedArgumentMirror [a.GetLength(0)]; for (int i = 0; i < new_value.Length; ++i) { new_value [i] = new CustomAttributeTypedArgumentMirror(etype, a.GetValue(i)); } this.value = new ReadOnlyCollection <CustomAttributeTypedArgumentMirror> (new_value); } }
internal CustomAttributeTypedArgumentMirror (Type type, object value) { this.type = type; this.value = value; if (value != null) this.type = value.GetType (); else this.type = typeof (void); // MS seems to convert arrays into a ReadOnlyCollection if (value is Array) { Array a = (Array)value; Type etype = a.GetType ().GetElementType (); CustomAttributeTypedArgumentMirror[] new_value = new CustomAttributeTypedArgumentMirror [a.GetLength (0)]; for (int i = 0; i < new_value.Length; ++i) new_value [i] = new CustomAttributeTypedArgumentMirror (etype, a.GetValue (i)); this.value = new ReadOnlyCollection <CustomAttributeTypedArgumentMirror> (new_value); } }
internal CustomAttributeNamedArgumentMirror (PropertyInfoMirror prop, FieldInfoMirror field, CustomAttributeTypedArgumentMirror arg) { this.arg = arg; this.prop = prop; this.field = field; }
internal CustomAttributeNamedArgumentMirror(PropertyInfoMirror prop, FieldInfoMirror field, CustomAttributeTypedArgumentMirror arg) { this.arg = arg; this.prop = prop; this.field = field; }