public override AstNode VisitTranslation_unit([NotNull] GLSL_ES300Parser.Translation_unitContext context)
        {
            Root result = null;

            var declarations = context.external_declaration_list();

            if (declarations != null)
            {
                result = (Root)this.Visit(declarations);
            }

            result = result ?? new Root();

            var version = context.shader_version_marker();

            if (version != null)
            {
                if (version.VersionMarker300ES() != null)
                {
                    result.Version = ShaderVersion.GlslEs300;
                }
            }

            return(result);
        }
Esempio n. 2
0
 /// <summary>
 /// Visit a parse tree produced by <see cref="GLSL_ES300Parser.translation_unit"/>.
 /// <para>
 /// The default implementation returns the result of calling <see cref="AbstractParseTreeVisitor{Result}.VisitChildren(IRuleNode)"/>
 /// on <paramref name="context"/>.
 /// </para>
 /// </summary>
 /// <param name="context">The parse tree.</param>
 /// <return>The visitor result.</return>
 public virtual Result VisitTranslation_unit([NotNull] GLSL_ES300Parser.Translation_unitContext context)
 {
     return(VisitChildren(context));
 }