private static DTGTypeMetadata EmitExtendsDTG(DatabaseTypeMetadata baseType) { if (baseType == null) { return(null); } return(EmitReferenceDTG(baseType)); }
private static DTGTypeMetadata EmitDeclaringTypeDTG(DatabaseTypeMetadata declaringType) { if (declaringType == null) { return(null); } return(EmitReferenceDTG(declaringType)); }
public static IEnumerable <DTGTypeMetadata> CheckGenericArgumentsDTG(DatabaseTypeMetadata typeMetadata) { if (typeMetadata.GenericArgumentsL != null) { return(EmitGenericArgumentsDTG(typeMetadata.GenericArgumentsL)); } return(null); }
public static DTGTypeMetadata MapToDTG(DatabaseTypeMetadata typeMetadata) { DTGTypeMetadata DatabaseTypeMetadata = new DTGTypeMetadata { TypeName = typeMetadata.TypeName, DeclaringType = EmitDeclaringTypeDTG(typeMetadata.DeclaringType), Constructors = DatabaseMethodMapper.EmitMethodsDTG(typeMetadata.ConstructorsL), Methods = DatabaseMethodMapper.EmitMethodsDTG(typeMetadata.MethodsL), NestedTypes = EmitNestedTypesDTG(typeMetadata.NestedTypesL), ImplementedInterfaces = EmitImplementsDTG(typeMetadata.ImplementedInterfacesL), GenericArguments = CheckGenericArgumentsDTG(typeMetadata), BaseType = EmitExtendsDTG(typeMetadata.BaseType), Properties = DatabasePropertyMapper.EmitPropertiesDTG(typeMetadata.PropertiesL), IsGenericType = typeMetadata.IsGenericType }; return(DatabaseTypeMetadata); }
public static DatabaseTypeMetadata FillTypeDatabase(DatabaseTypeMetadata DTGTypeMetadata, DTGTypeMetadata typeMetadata) { DTGTypeMetadata.TypeName = typeMetadata.TypeName; DTGTypeMetadata.DeclaringType = EmitDeclaringTypeDatabase(typeMetadata.DeclaringType); DTGTypeMetadata.Constructors = DatabaseMethodMapper.EmitMethodsDatabase(typeMetadata.Constructors); DTGTypeMetadata.Methods = DatabaseMethodMapper.EmitMethodsDatabase(typeMetadata.Methods); DTGTypeMetadata.NestedTypes = EmitNestedTypesDatabase(typeMetadata.NestedTypes); DTGTypeMetadata.ImplementedInterfaces = EmitImplementsDatabase(typeMetadata.ImplementedInterfaces); if (typeMetadata.GenericArguments != null) { DTGTypeMetadata.GenericArguments = EmitGenericArgumentsDatabase(typeMetadata.GenericArguments); } else { DTGTypeMetadata.GenericArguments = null; } //DTGTypeMetadata.Modifiers = EmitModifiers(typeMetadata); DTGTypeMetadata.BaseType = EmitExtendsDatabase(typeMetadata.BaseType); DTGTypeMetadata.Properties = DatabasePropertyMapper.EmitPropertiesDatabase(typeMetadata.Properties); return(DTGTypeMetadata); }
internal static DTGTypeMetadata EmitReferenceDTG(DatabaseTypeMetadata type) { if (type == null) { return(null); } if (HelperDictonaries.TypeDictonaryToDTG.ContainsKey(type)) { return(HelperDictonaries.TypeDictonaryToDTG[type]); } if (!type.IsGenericType) { HelperDictonaries.TypeDictonaryToDTG[type] = MapToDTG(type); return(HelperDictonaries.TypeDictonaryToDTG[type]); } else { return(MapToDTG(type)); } }