Example #1
0
        public AstManager()
        {
            var source = new IdSource();

            DetachedAstContainer = new AstContainer <IDeclaredElement>(source);
            PsiContainer         = new AstContainer <ITreeNode>(source);
            TypeContainer        = new AstContainer <IArrayType>(source);
        }
Example #2
0
        private static TResult TryMapWith <TNode, TBaseNode, TResult>(
            int id,
            [NotNull] AstContainer <TBaseNode> container,
            [NotNull] Func <TNode, TResult> mapper
            )
            where TNode : TBaseNode
            where TBaseNode : class
        {
            var node = container.TryGetElement(id);

            if (node == null)
            {
                return(default);