private static IEnumerable <ParameterMetadata> EmitFields(IEnumerable <FieldInfo> fieldInfo) { List <ParameterMetadata> parameters = new List <ParameterMetadata>(); foreach (FieldInfo field in fieldInfo) { StoreType(field.FieldType); parameters.Add(new ParameterMetadata(field.Name, TypeMetadata.EmitReference(field.FieldType))); } return(parameters); }
private static TypeMetadata EmitReturnType(MethodBase method) { MethodInfo methodInfo = method as MethodInfo; if (methodInfo == null) { return(null); } TypeMetadata.StoreType(methodInfo.ReturnType); return(TypeMetadata.EmitReference(methodInfo.ReturnType)); }
private static IEnumerable <ParameterMetadata> EmitParameters(IEnumerable <ParameterInfo> parms) { return(from parm in parms select new ParameterMetadata(parm.Name, TypeMetadata.EmitReference(parm.ParameterType))); }
public static IEnumerable <PropertyMetadata> EmitProperties(IEnumerable <PropertyInfo> props) { return(from prop in props where prop.GetGetMethod().GetVisible() || prop.GetSetMethod().GetVisible() select new PropertyMetadata(prop.Name, TypeMetadata.EmitReference(prop.PropertyType))); }