public AbstractionModel CreateAbstractionModel(string code, string path = "") { var model = new AbstractionModel(); model.SourceCode = code; model.CodeFilePath = path; var parser = new CodeParser(); var classNode = parser.GetClasses(code).First() as ClassDeclarationSyntax; SetType(classNode, model); SetImplementedPorts(classNode, model); SetAcceptedPorts(classNode, model); SetProperties(classNode, model); SetFields(classNode, model); SetConstructorArgs(classNode, model); SetDocumentation(classNode, model); _abstractionModels[model.Type] = model; return(model); }