/** (A|B|C) possibly with ebnfRoot and label */
        public IList <SrcOp> Set(GrammarAST setAST, GrammarAST labelAST, bool invert)
        {
            IList <SrcOp> ops = @delegate.Set(setAST, labelAST, invert);

            foreach (CodeGeneratorExtension ext in extensions)
            {
                ops = ext.Set(ops);
            }
            return(ops);
        }