private BoundNode BindTechniqueDeclaration(TechniqueSyntax declaration) { var techniqueSymbol = new TechniqueSymbol(declaration.Name.Text); AddSymbol(techniqueSymbol, declaration.Name.Span); var techniqueBinder = new Binder(_sharedBinderState, this); var boundPasses = declaration.Passes.Select(x => techniqueBinder.Bind(x, techniqueBinder.BindPass)); return new BoundTechnique(techniqueSymbol, boundPasses.ToImmutableArray()); }
public ImmutableArray <ISymbol> GetMembers() => ImmutableArray <ISymbol> .Empty; // TODO internal TechniqueSymbol(TechniqueSyntax syntax) : base(SymbolKind.Technique, syntax.Name?.Text, string.Empty, null) { SourceTree = syntax.SyntaxTree; Locations = syntax.Name != null ? ImmutableArray.Create(syntax.Name.SourceRange) : ImmutableArray <SourceRange> .Empty; DeclaringSyntaxNodes = ImmutableArray.Create((SyntaxNodeBase)syntax); }
public override void VisitTechnique(TechniqueSyntax node) { CreateTag( BlockSpanType.Type, node.Name, node.CloseBraceToken, node.TechniqueKeyword, node.Name, false); base.VisitTechnique(node); }
private BoundNode BindTechniqueDeclaration(TechniqueSyntax declaration) { var techniqueSymbol = new TechniqueSymbol(declaration.Name.Text); AddSymbol(techniqueSymbol, declaration.Name.SourceRange); var techniqueBinder = new Binder(_sharedBinderState, this); var boundPasses = declaration.Passes.Select(x => techniqueBinder.Bind(x, techniqueBinder.BindPass)); return(new BoundTechnique(techniqueSymbol, boundPasses.ToImmutableArray())); }
public override void VisitTechnique(TechniqueSyntax node) { ProcessItem(node.Name, node.Name.Text, node.GetTextSpanSafe(), NavigateToItemKind.Structure, node.Parent, Glyph.Technique); }
public override void VisitTechnique(TechniqueSyntax node) { CreateTag(node.Name, node.CloseBraceToken); }
public override IEnumerable <EditorNavigationTarget> VisitTechnique(TechniqueSyntax node) { yield return(CreateTarget(node.Name, node.Name?.Text, node.GetTextSpanSafe(), Glyph.Technique)); }
public TechniqueSymbol GetDeclaredSymbol(TechniqueSyntax syntax) { var result = _bindingResult.GetBoundNode(syntax) as BoundTechnique; return result?.TechniqueSymbol; }
public virtual void VisitTechnique(TechniqueSyntax node) { DefaultVisit(node); }
public TechniqueSymbol GetDeclaredSymbol(TechniqueSyntax syntax) { var result = _bindingResult.GetBoundNode(syntax) as BoundTechnique; return(result?.TechniqueSymbol); }