Refactoring: do not use smodel.SNode if openapi alternative is available
Refactor: use SConcept instead of SNode-backed concepts
Refactoring: do not use smodel.SNode if openapi alternative is available
Refactor binary persistence: get rid of unused parameters and code (and eventually, access to smodel internal classes)
Refactor CloneUtil to get ready for SNodes other smodel.SNode
Take specializing link, if present.
E.g. StaticMethodCall specializes BaseMethodCall.baseMethodDeclaration with staticMethodDeclaration, which points to StaticMethodDeclaration.
SMD(unlike BaseMethodDeclaration) is IResolveInfo. There are a lot of templates (178 failing tests) with e.g. StaticMethodCall.baseMethodDeclaration that fail to resolve.
It seems fair to use most specific link available in the given concept, otherwise the idea of 'specializes' links is for nothing.
Refactor common code to collect and apply template fragments through TP into TemplateContainer. This gives a single place to look and fix at.
Eventually, TC may optimize apply (e.g. pre-process and cache framgents), although now this is blocked by use of input node/rule in initialize() code (for error reporting).
Apparently, closeTemplateNode is missing for trace
Refactoring: do not use smodel.SNode if openapi alternative is available, or at least delegate to the one and only location.
Refactor TransientSModel use: swap shall be agnostic to specific model instance it caches out and back, leave specific model kind knowledge up in the transient module/descriptor.
Unnecessary cast removed
Refactor GenerationSessionContext to match its name, to keep and to serve as a single source of session state. Handy copy constructors added.
Merge branch 'master' into 3.1/artem/default
Do not cast to smodel.SNode when API alternatives are available. Move unaffected code outside loop.
Rebuilt after merge
Refactor validators to use SConcept API instead of concept SNodes
Merge remote-tracking branch 'origin/master' into 3.1/artem/default
Rebuilt after merge
Refactor: use SConcept/SProperty instead of concept SNode. Use of PropertySupport gone for two reasons: (a) we care about equal values only, values from storage are enough (unless there are different values meaning the same, but PropertySupport doesn't promise solution for this either); (b) there's no alternative in openapi
Merge branch 'master' into 3.1/artem/default