public TExtraction(DeclarationRegistry registry, string name) { Name = name; _model = registry.Model; _registry = registry; _node = (TDeclarationSyntax)_registry.GetIType(name); }
public static ITypeExtraction CreateTypeExtraction(DeclarationRegistry registry, string name) { TypeDeclarationSyntax node = registry.GetIType(name); switch (node) { case ClassDeclarationSyntax _: return(new ClassExtraction(registry, name)); case StructDeclarationSyntax _: return(new StructExtraction(registry, name)); case InterfaceDeclarationSyntax _: return(new InterfaceExtraction(registry, name)); default: return(null); } }