private static DTGTypeMetadata EmitExtendsDTG(XMLTypeMetadata baseType) { if (baseType == null) { return(null); } return(EmitReferenceDTG(baseType)); }
private static DTGTypeMetadata EmitDeclaringTypeDTG(XMLTypeMetadata declaringType) { if (declaringType == null) { return(null); } return(EmitReferenceDTG(declaringType)); }
public static IEnumerable <DTGTypeMetadata> CheckGenericArgumentsDTG(XMLTypeMetadata typeMetadata) { if (typeMetadata.GenericArgumentsL != null) { return(EmitGenericArgumentsDTG(typeMetadata.GenericArgumentsL)); } return(null); }
public static XMLTypeMetadata MapToXML(DTGTypeMetadata typeMetadata) { XMLTypeMetadata xmlTypeMetadata = new XMLTypeMetadata { TypeName = typeMetadata.TypeName, DeclaringType = EmitDeclaringTypeXML(typeMetadata.DeclaringType), Constructors = SerializationMethodMapper.EmitMethodsXML(typeMetadata.Constructors), Methods = SerializationMethodMapper.EmitMethodsXML(typeMetadata.Methods), NestedTypes = EmitNestedTypesXML(typeMetadata.NestedTypes), ImplementedInterfaces = EmitImplementsXML(typeMetadata.ImplementedInterfaces), GenericArguments = CheckGenericArgumentsXML(typeMetadata), BaseType = EmitExtendsXML(typeMetadata.BaseType), Properties = SerializationPropertyMapper.EmitPropertiesXML(typeMetadata.Properties), IsGenericType = typeMetadata.IsGenericType }; return(xmlTypeMetadata); }
public static XMLTypeMetadata FillTypeXML(XMLTypeMetadata dtg2TypeMetadata, DTGTypeMetadata typeMetadata) { dtg2TypeMetadata.TypeName = typeMetadata.TypeName; dtg2TypeMetadata.DeclaringType = EmitDeclaringTypeXML(typeMetadata.DeclaringType); dtg2TypeMetadata.Constructors = SerializationMethodMapper.EmitMethodsXML(typeMetadata.Constructors); dtg2TypeMetadata.Methods = SerializationMethodMapper.EmitMethodsXML(typeMetadata.Methods); dtg2TypeMetadata.NestedTypes = EmitNestedTypesXML(typeMetadata.NestedTypes); dtg2TypeMetadata.ImplementedInterfaces = EmitImplementsXML(typeMetadata.ImplementedInterfaces); if (typeMetadata.GenericArguments != null) { dtg2TypeMetadata.GenericArguments = EmitGenericArgumentsXML(typeMetadata.GenericArguments); } else { dtg2TypeMetadata.GenericArguments = null; } //dtg2TypeMetadata.Modifiers = EmitModifiers(typeMetadata); dtg2TypeMetadata.BaseType = EmitExtendsXML(typeMetadata.BaseType); dtg2TypeMetadata.Properties = SerializationPropertyMapper.EmitPropertiesXML(typeMetadata.Properties); return(dtg2TypeMetadata); }
internal static DTGTypeMetadata EmitReferenceDTG(XMLTypeMetadata 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)); } }