Пример #1
0
        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);
        }