Beispiel #1
0
        private ImmutableArray <Symbol> BindIndexerMemberCref(IndexerMemberCrefSyntax syntax, NamespaceOrTypeSymbol containerOpt, out Symbol ambiguityWinner, DiagnosticBag diagnostics)
        {
            const int arity = 0;

            ImmutableArray <Symbol> sortedSymbols = ComputeSortedCrefMembers(syntax, containerOpt, WellKnownMemberNames.Indexer, arity, syntax.Parameters != null, diagnostics);

            if (sortedSymbols.IsEmpty)
            {
                ambiguityWinner = null;
                return(ImmutableArray <Symbol> .Empty);
            }

            // Since only indexers are named WellKnownMemberNames.Indexer.
            Debug.Assert(sortedSymbols.All(SymbolExtensions.IsIndexer));

            // NOTE: guaranteed to be a property, because only indexers are considered.
            return(ProcessCrefMemberLookupResults(
                       sortedSymbols,
                       arity,
                       syntax,
                       typeArgumentListSyntax: null,
                       parameterListSyntax: syntax.Parameters,
                       ambiguityWinner: out ambiguityWinner,
                       diagnostics: diagnostics));
        }
Beispiel #2
0
        public override void VisitIndexerMemberCref(IndexerMemberCrefSyntax node)
        {
            if (!PreVisit(node))
            {
                return;
            }

            node.Parameters?.Accept(this);

            base.VisitIndexerMemberCref(node);

            PostVisit(node);
        }
 public override void VisitIndexerMemberCref(IndexerMemberCrefSyntax node)
 {
     Debug.Fail(node.ToString());
     base.VisitIndexerMemberCref(node);
 }
        private ImmutableArray<Symbol> BindIndexerMemberCref(IndexerMemberCrefSyntax syntax, NamespaceOrTypeSymbol containerOpt, out Symbol ambiguityWinner, DiagnosticBag diagnostics)
        {
            const int arity = 0;

            ImmutableArray<Symbol> sortedSymbols = ComputeSortedCrefMembers(syntax, containerOpt, WellKnownMemberNames.Indexer, arity, syntax.Parameters != null, diagnostics);

            if (sortedSymbols.IsEmpty)
            {
                ambiguityWinner = null;
                return ImmutableArray<Symbol>.Empty;
            }

            // Since only indexers are named WellKnownMemberNames.Indexer.
            Debug.Assert(sortedSymbols.All(SymbolExtensions.IsIndexer));

            // NOTE: guaranteed to be a property, because only indexers are considered.
            return ProcessCrefMemberLookupResults(
                sortedSymbols,
                arity,
                syntax,
                typeArgumentListSyntax: null,
                parameterListSyntax: syntax.Parameters,
                ambiguityWinner: out ambiguityWinner,
                diagnostics: diagnostics);
        }
 public override void VisitIndexerMemberCref(IndexerMemberCrefSyntax node)
 {
     throw new NotSupportedException("Indexer Member is not supported");
 }
Beispiel #6
0
        public override void VisitIndexerMemberCref(IndexerMemberCrefSyntax node)
        {
            node.Parameters?.Accept(this);

            base.VisitIndexerMemberCref(node);
        }
Beispiel #7
0
 public override void VisitIndexerMemberCref(IndexerMemberCrefSyntax node)
 {
     throw new NotImplementedException();
 }
Beispiel #8
0
 public override void VisitIndexerMemberCref(IndexerMemberCrefSyntax node)
 {
     Log(node, "Unsupported Syntax !");
 }
Beispiel #9
0
 public override void VisitIndexerMemberCref(IndexerMemberCrefSyntax node) => base.VisitIndexerMemberCref(node);
 public override void VisitIndexerMemberCref(IndexerMemberCrefSyntax node)
 {
 }
Beispiel #11
0
 public TameIndexerMemberCrefSyntax(IndexerMemberCrefSyntax node)
 {
     Node = node;
     AddChildren();
 }
 public override SyntaxNode VisitIndexerMemberCref(IndexerMemberCrefSyntax node)
 {
     node = (IndexerMemberCrefSyntax)base.VisitIndexerMemberCref(node);
     Classes.Add(node);
     return(node);
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="node"></param>
 public override sealed void VisitIndexerMemberCref(IndexerMemberCrefSyntax node)
 {
     this.OnNodeVisited(node, this.type.IsInstanceOfType(node));
     base.VisitIndexerMemberCref(node);
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="node"></param>
 public override sealed void VisitIndexerMemberCref(IndexerMemberCrefSyntax node)
 {
     this.OnNodeVisited(node);
     if (!this.traverseRootOnly) base.VisitIndexerMemberCref(node);
 }
Beispiel #15
0
        public override Evaluation VisitIndexerMemberCref(IndexerMemberCrefSyntax node)
        {
            node.Parameters?.Accept <Evaluation>(this);

            return(base.VisitIndexerMemberCref(node));
        }
 //
 // Summary:
 //     Called when the visitor visits a IndexerMemberCrefSyntax node.
 public virtual void VisitIndexerMemberCref(IndexerMemberCrefSyntax node);