public AstManager() { var source = new IdSource(); DetachedAstContainer = new AstContainer <IDeclaredElement>(source); PsiContainer = new AstContainer <ITreeNode>(source); TypeContainer = new AstContainer <IArrayType>(source); }
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);