public AssemblyDataType(Type type) { Name = type.Name; accessModificator = DataAccessModificator.GetTypeModifiers(type); typeAttribute = DataAttribute.GetTypeAtributes(type); typeClass = DataTypeClass.GetTypeClass(type); this.type = type; Fields = new List <AssemblyTypeMember>(); IsGenerated = IsCompilerGenerated(type); var flags = BindingFlags.Instance | BindingFlags.Static | BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.DeclaredOnly; foreach (var fieldInfo in type.GetFields(flags)) { Fields.Add(new AssemblyTypeMember(fieldInfo, IsCompilerGenerated(fieldInfo))); } foreach (var properyInfo in type.GetProperties(flags)) { Fields.Add(new AssemblyTypeMember(properyInfo, IsCompilerGenerated(properyInfo))); } foreach (var methodInfo in type.GetMethods(flags)) { if (!methodInfo.IsDefined(typeof(ExtensionAttribute), false)) { Fields.Add(new AssemblyTypeMember(methodInfo, IsCompilerGenerated(methodInfo))); } } }
public TypeField(FieldInfo fieldInfo) { name = fieldInfo.Name; this.fieldInfo = fieldInfo; accessModificator = DataAccessModificator.GetTypeModifiers(fieldInfo); }
public TypeMethod(MethodInfo methodInfo, bool isExtension = false) { name = methodInfo.Name; IsExtensionMethod = isExtension; this.methodInfo = methodInfo; accessModificator = DataAccessModificator.GetTypeModifiers(methodInfo); typeAttribute = DataAttribute.GetAttributes(methodInfo); }
public override string GetFullName() { string result = DataAccessModificator.GetString(accessModificator) + " " + AssemblyDataType.GetTypeGenericName(fieldInfo.FieldType) + " " + name; return(result); }
public string GetFullName() { string accessModificatorString = DataAccessModificator.GetString(accessModificator); string typeAttributeString = DataAttribute.GetString(typeAttribute); string typeClassString = DataTypeClass.GetString(typeClass); return ((accessModificatorString != "" ? (accessModificatorString + " ") : "") + (typeAttributeString != "" ? (typeAttributeString + " ") : "") + (typeClassString != "" ? (typeClassString + " ") : "") + GetTypeGenericName(type)); }
public AssemblyDataType(Type extendedType, MethodInfo[] extensionMethods) { Name = extendedType.Name; accessModificator = DataAccessModificator.GetTypeModifiers(extendedType); typeAttribute = DataAttribute.GetTypeAtributes(extendedType); typeClass = DataTypeClass.GetTypeClass(extendedType); this.type = extendedType; Fields = new List <AssemblyTypeMember>(); foreach (var methodInfo in extensionMethods) { Fields.Add(new AssemblyTypeMember(methodInfo, IsCompilerGenerated(methodInfo), true)); } }
public override string GetFullName() { string paramsString = "("; foreach (var parameter in methodInfo.GetParameters()) { if (paramsString != "(") { paramsString += " ,"; } paramsString += (parameter.IsOut ? "out " : parameter.IsIn ? "in " : parameter.ParameterType.IsByRef ? "ref " : "") + AssemblyDataType.GetTypeGenericName(parameter.ParameterType) + " " + parameter.Name; } paramsString += ")"; string typeAttributeString = DataAttribute.GetString(typeAttribute); return (DataAccessModificator.GetString(accessModificator) + " " + (typeAttributeString != "" ? typeAttributeString + " " : "") + AssemblyDataType.GetTypeGenericName(methodInfo.ReturnType) + " " + name + paramsString); }