# Generated from TypeLang.g4 by ANTLR 4.13.2
from antlr4 import *
if "." in __name__:
    from .TypeLangParser import TypeLangParser
else:
    from TypeLangParser import TypeLangParser

# This class defines a complete listener for a parse tree produced by TypeLangParser.
class TypeLangListener(ParseTreeListener):

    # Enter a parse tree produced by TypeLangParser#done.
    def enterDone(self, ctx:TypeLangParser.DoneContext):
        pass

    # Exit a parse tree produced by TypeLangParser#done.
    def exitDone(self, ctx:TypeLangParser.DoneContext):
        pass


    # Enter a parse tree produced by TypeLangParser#ignored_1a.
    def enterIgnored_1a(self, ctx:TypeLangParser.Ignored_1aContext):
        pass

    # Exit a parse tree produced by TypeLangParser#ignored_1a.
    def exitIgnored_1a(self, ctx:TypeLangParser.Ignored_1aContext):
        pass


    # Enter a parse tree produced by TypeLangParser#ignored_1b.
    def enterIgnored_1b(self, ctx:TypeLangParser.Ignored_1bContext):
        pass

    # Exit a parse tree produced by TypeLangParser#ignored_1b.
    def exitIgnored_1b(self, ctx:TypeLangParser.Ignored_1bContext):
        pass


    # Enter a parse tree produced by TypeLangParser#ignored_1c.
    def enterIgnored_1c(self, ctx:TypeLangParser.Ignored_1cContext):
        pass

    # Exit a parse tree produced by TypeLangParser#ignored_1c.
    def exitIgnored_1c(self, ctx:TypeLangParser.Ignored_1cContext):
        pass


    # Enter a parse tree produced by TypeLangParser#ignored_1d.
    def enterIgnored_1d(self, ctx:TypeLangParser.Ignored_1dContext):
        pass

    # Exit a parse tree produced by TypeLangParser#ignored_1d.
    def exitIgnored_1d(self, ctx:TypeLangParser.Ignored_1dContext):
        pass


    # Enter a parse tree produced by TypeLangParser#ignored_2b.
    def enterIgnored_2b(self, ctx:TypeLangParser.Ignored_2bContext):
        pass

    # Exit a parse tree produced by TypeLangParser#ignored_2b.
    def exitIgnored_2b(self, ctx:TypeLangParser.Ignored_2bContext):
        pass


    # Enter a parse tree produced by TypeLangParser#ignored_2a.
    def enterIgnored_2a(self, ctx:TypeLangParser.Ignored_2aContext):
        pass

    # Exit a parse tree produced by TypeLangParser#ignored_2a.
    def exitIgnored_2a(self, ctx:TypeLangParser.Ignored_2aContext):
        pass


    # Enter a parse tree produced by TypeLangParser#return_expr.
    def enterReturn_expr(self, ctx:TypeLangParser.Return_exprContext):
        pass

    # Exit a parse tree produced by TypeLangParser#return_expr.
    def exitReturn_expr(self, ctx:TypeLangParser.Return_exprContext):
        pass


    # Enter a parse tree produced by TypeLangParser#return_named.
    def enterReturn_named(self, ctx:TypeLangParser.Return_namedContext):
        pass

    # Exit a parse tree produced by TypeLangParser#return_named.
    def exitReturn_named(self, ctx:TypeLangParser.Return_namedContext):
        pass


    # Enter a parse tree produced by TypeLangParser#err_if_toks.
    def enterErr_if_toks(self, ctx:TypeLangParser.Err_if_toksContext):
        pass

    # Exit a parse tree produced by TypeLangParser#err_if_toks.
    def exitErr_if_toks(self, ctx:TypeLangParser.Err_if_toksContext):
        pass


    # Enter a parse tree produced by TypeLangParser#ignored_3a.
    def enterIgnored_3a(self, ctx:TypeLangParser.Ignored_3aContext):
        pass

    # Exit a parse tree produced by TypeLangParser#ignored_3a.
    def exitIgnored_3a(self, ctx:TypeLangParser.Ignored_3aContext):
        pass


    # Enter a parse tree produced by TypeLangParser#ignored_3b.
    def enterIgnored_3b(self, ctx:TypeLangParser.Ignored_3bContext):
        pass

    # Exit a parse tree produced by TypeLangParser#ignored_3b.
    def exitIgnored_3b(self, ctx:TypeLangParser.Ignored_3bContext):
        pass


    # Enter a parse tree produced by TypeLangParser#atom_multi.
    def enterAtom_multi(self, ctx:TypeLangParser.Atom_multiContext):
        pass

    # Exit a parse tree produced by TypeLangParser#atom_multi.
    def exitAtom_multi(self, ctx:TypeLangParser.Atom_multiContext):
        pass


    # Enter a parse tree produced by TypeLangParser#atom_explicit_in.
    def enterAtom_explicit_in(self, ctx:TypeLangParser.Atom_explicit_inContext):
        pass

    # Exit a parse tree produced by TypeLangParser#atom_explicit_in.
    def exitAtom_explicit_in(self, ctx:TypeLangParser.Atom_explicit_inContext):
        pass


    # Enter a parse tree produced by TypeLangParser#atom_explicit.
    def enterAtom_explicit(self, ctx:TypeLangParser.Atom_explicitContext):
        pass

    # Exit a parse tree produced by TypeLangParser#atom_explicit.
    def exitAtom_explicit(self, ctx:TypeLangParser.Atom_explicitContext):
        pass


    # Enter a parse tree produced by TypeLangParser#atom_in_implicitly.
    def enterAtom_in_implicitly(self, ctx:TypeLangParser.Atom_in_implicitlyContext):
        pass

    # Exit a parse tree produced by TypeLangParser#atom_in_implicitly.
    def exitAtom_in_implicitly(self, ctx:TypeLangParser.Atom_in_implicitlyContext):
        pass


    # Enter a parse tree produced by TypeLangParser#atom_in.
    def enterAtom_in(self, ctx:TypeLangParser.Atom_inContext):
        pass

    # Exit a parse tree produced by TypeLangParser#atom_in.
    def exitAtom_in(self, ctx:TypeLangParser.Atom_inContext):
        pass


    # Enter a parse tree produced by TypeLangParser#atom_implicitly.
    def enterAtom_implicitly(self, ctx:TypeLangParser.Atom_implicitlyContext):
        pass

    # Exit a parse tree produced by TypeLangParser#atom_implicitly.
    def exitAtom_implicitly(self, ctx:TypeLangParser.Atom_implicitlyContext):
        pass


    # Enter a parse tree produced by TypeLangParser#atom.
    def enterAtom(self, ctx:TypeLangParser.AtomContext):
        pass

    # Exit a parse tree produced by TypeLangParser#atom.
    def exitAtom(self, ctx:TypeLangParser.AtomContext):
        pass


    # Enter a parse tree produced by TypeLangParser#name.
    def enterName(self, ctx:TypeLangParser.NameContext):
        pass

    # Exit a parse tree produced by TypeLangParser#name.
    def exitName(self, ctx:TypeLangParser.NameContext):
        pass


    # Enter a parse tree produced by TypeLangParser#atom_in_parens.
    def enterAtom_in_parens(self, ctx:TypeLangParser.Atom_in_parensContext):
        pass

    # Exit a parse tree produced by TypeLangParser#atom_in_parens.
    def exitAtom_in_parens(self, ctx:TypeLangParser.Atom_in_parensContext):
        pass


    # Enter a parse tree produced by TypeLangParser#prealloc_in.
    def enterPrealloc_in(self, ctx:TypeLangParser.Prealloc_inContext):
        pass

    # Exit a parse tree produced by TypeLangParser#prealloc_in.
    def exitPrealloc_in(self, ctx:TypeLangParser.Prealloc_inContext):
        pass


    # Enter a parse tree produced by TypeLangParser#prealloc.
    def enterPrealloc(self, ctx:TypeLangParser.PreallocContext):
        pass

    # Exit a parse tree produced by TypeLangParser#prealloc.
    def exitPrealloc(self, ctx:TypeLangParser.PreallocContext):
        pass


    # Enter a parse tree produced by TypeLangParser#assign_expr_to.
    def enterAssign_expr_to(self, ctx:TypeLangParser.Assign_expr_toContext):
        pass

    # Exit a parse tree produced by TypeLangParser#assign_expr_to.
    def exitAssign_expr_to(self, ctx:TypeLangParser.Assign_expr_toContext):
        pass


    # Enter a parse tree produced by TypeLangParser#struct.
    def enterStruct(self, ctx:TypeLangParser.StructContext):
        pass

    # Exit a parse tree produced by TypeLangParser#struct.
    def exitStruct(self, ctx:TypeLangParser.StructContext):
        pass


    # Enter a parse tree produced by TypeLangParser#schema_var.
    def enterSchema_var(self, ctx:TypeLangParser.Schema_varContext):
        pass

    # Exit a parse tree produced by TypeLangParser#schema_var.
    def exitSchema_var(self, ctx:TypeLangParser.Schema_varContext):
        pass


    # Enter a parse tree produced by TypeLangParser#inter_low.
    def enterInter_low(self, ctx:TypeLangParser.Inter_lowContext):
        pass

    # Exit a parse tree produced by TypeLangParser#inter_low.
    def exitInter_low(self, ctx:TypeLangParser.Inter_lowContext):
        pass


    # Enter a parse tree produced by TypeLangParser#inter.
    def enterInter(self, ctx:TypeLangParser.InterContext):
        pass

    # Exit a parse tree produced by TypeLangParser#inter.
    def exitInter(self, ctx:TypeLangParser.InterContext):
        pass


    # Enter a parse tree produced by TypeLangParser#fn.
    def enterFn(self, ctx:TypeLangParser.FnContext):
        pass

    # Exit a parse tree produced by TypeLangParser#fn.
    def exitFn(self, ctx:TypeLangParser.FnContext):
        pass


    # Enter a parse tree produced by TypeLangParser#expr_parens.
    def enterExpr_parens(self, ctx:TypeLangParser.Expr_parensContext):
        pass

    # Exit a parse tree produced by TypeLangParser#expr_parens.
    def exitExpr_parens(self, ctx:TypeLangParser.Expr_parensContext):
        pass


    # Enter a parse tree produced by TypeLangParser#union.
    def enterUnion(self, ctx:TypeLangParser.UnionContext):
        pass

    # Exit a parse tree produced by TypeLangParser#union.
    def exitUnion(self, ctx:TypeLangParser.UnionContext):
        pass


    # Enter a parse tree produced by TypeLangParser#name_or_atom.
    def enterName_or_atom(self, ctx:TypeLangParser.Name_or_atomContext):
        pass

    # Exit a parse tree produced by TypeLangParser#name_or_atom.
    def exitName_or_atom(self, ctx:TypeLangParser.Name_or_atomContext):
        pass


    # Enter a parse tree produced by TypeLangParser#rec.
    def enterRec(self, ctx:TypeLangParser.RecContext):
        pass

    # Exit a parse tree produced by TypeLangParser#rec.
    def exitRec(self, ctx:TypeLangParser.RecContext):
        pass


    # Enter a parse tree produced by TypeLangParser#tuple.
    def enterTuple(self, ctx:TypeLangParser.TupleContext):
        pass

    # Exit a parse tree produced by TypeLangParser#tuple.
    def exitTuple(self, ctx:TypeLangParser.TupleContext):
        pass


    # Enter a parse tree produced by TypeLangParser#expr_in.
    def enterExpr_in(self, ctx:TypeLangParser.Expr_inContext):
        pass

    # Exit a parse tree produced by TypeLangParser#expr_in.
    def exitExpr_in(self, ctx:TypeLangParser.Expr_inContext):
        pass


    # Enter a parse tree produced by TypeLangParser#mutable.
    def enterMutable(self, ctx:TypeLangParser.MutableContext):
        pass

    # Exit a parse tree produced by TypeLangParser#mutable.
    def exitMutable(self, ctx:TypeLangParser.MutableContext):
        pass


    # Enter a parse tree produced by TypeLangParser#inter_high.
    def enterInter_high(self, ctx:TypeLangParser.Inter_highContext):
        pass

    # Exit a parse tree produced by TypeLangParser#inter_high.
    def exitInter_high(self, ctx:TypeLangParser.Inter_highContext):
        pass


    # Enter a parse tree produced by TypeLangParser#map.
    def enterMap(self, ctx:TypeLangParser.MapContext):
        pass

    # Exit a parse tree produced by TypeLangParser#map.
    def exitMap(self, ctx:TypeLangParser.MapContext):
        pass


    # Enter a parse tree produced by TypeLangParser#seq.
    def enterSeq(self, ctx:TypeLangParser.SeqContext):
        pass

    # Exit a parse tree produced by TypeLangParser#seq.
    def exitSeq(self, ctx:TypeLangParser.SeqContext):
        pass


    # Enter a parse tree produced by TypeLangParser#comment.
    def enterComment(self, ctx:TypeLangParser.CommentContext):
        pass

    # Exit a parse tree produced by TypeLangParser#comment.
    def exitComment(self, ctx:TypeLangParser.CommentContext):
        pass


    # Enter a parse tree produced by TypeLangParser#ignored_4a.
    def enterIgnored_4a(self, ctx:TypeLangParser.Ignored_4aContext):
        pass

    # Exit a parse tree produced by TypeLangParser#ignored_4a.
    def exitIgnored_4a(self, ctx:TypeLangParser.Ignored_4aContext):
        pass


    # Enter a parse tree produced by TypeLangParser#ignored_4b.
    def enterIgnored_4b(self, ctx:TypeLangParser.Ignored_4bContext):
        pass

    # Exit a parse tree produced by TypeLangParser#ignored_4b.
    def exitIgnored_4b(self, ctx:TypeLangParser.Ignored_4bContext):
        pass



del TypeLangParser