Example #1
0
        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());
        }
Example #2
0
 public BoundTechnique(TechniqueSymbol techniqueSymbol, ImmutableArray<BoundPass> passes)
     : base(BoundNodeKind.Technique)
 {
     TechniqueSymbol = techniqueSymbol;
     Passes = passes;
 }