• Kipper

    v0.12.1
  • Downloads

  • Docs

  • Playground

  • Changelog

  • Kipper

    v0.12.1
    • Downloads

    • Docs

    • Playground

    • Changelog

      • next /
      • Kipper API /
      • Module /
      • @kipper/core /
      • compiler
    Kipper Docs
    • next
    • latest
    • 0.11.0
    • 0.10.4
    • 0.9.2
    • Overview

    • Quickstart

    • Goals for Kipper

    • Supported platforms

    • Usage Examples

      • Overview

    • Variables

      • Overview

      • String Type

      • Number Type

      • Boolean Type

      • Void Type

      • Null Type

      • Undefined Type

      • Array Type

      • Overview

      • Tangled Expression

      • Arithmetic Expression

      • Assignment Expression

      • Conditional Expressions

      • Logical Expressions

      • Bitwise Expression

      • Relational Expressions

      • Convert Or Cast Expression

      • F-String Expression

      • Member Access Expression

      • Function Call Expression

      • Lambda Expression

      • Matches Expression

      • Overview

      • Expression Statement

      • If Statement

      • While Loop

      • Do-While Loop

      • For Loop

      • Compound Statement

      • Jump Statement

    • Functions

    • Interfaces

    • Classes

    • Comments

    • Built-in Functions

      • Overview

      • Compiler Setup

        • Overview

          • index

          • compiler

          • errors

          • logger

          • utils

          • config

          • index

          • index

        • Overview

        • new

        • run

        • compile

        • help

        • version

      • next /
      • Kipper API /
      • Module /
      • @kipper/core /
      • compiler
    • next /
    • Kipper API /
    • Module /
    • @kipper/core /
    • compiler

    Edit page

    Class: KipperParserRuleContext

    compiler.KipperParserRuleContext

    A custom implementation of the Antlr4 ParserRuleContext class, representing a node in the parse tree.

    Since

    0.10.0

    Hierarchy

    • ParserRuleContext

      ↳ KipperParserRuleContext

      ↳↳ CompilationUnitContext

      ↳↳ TranslationUnitContext

      ↳↳ ExternalItemContext

      ↳↳ BlockItemListContext

      ↳↳ BlockItemContext

      ↳↳ DeclarationContext

      ↳↳ VariableDeclarationContext

      ↳↳ StorageTypeSpecifierContext

      ↳↳ InitDeclaratorContext

      ↳↳ InitializerContext

      ↳↳ DeclaratorContext

      ↳↳ DirectDeclaratorContext

      ↳↳ FunctionDeclarationContext

      ↳↳ ParameterListContext

      ↳↳ ParameterDeclarationContext

      ↳↳ InterfaceDeclarationContext

      ↳↳ InterfaceMemberDeclarationContext

      ↳↳ InterfacePropertyDeclarationContext

      ↳↳ InterfaceMethodDeclarationContext

      ↳↳ ClassDeclarationContext

      ↳↳ ClassMemberDeclarationContext

      ↳↳ ClassPropertyDeclarationContext

      ↳↳ ClassMethodDeclarationContext

      ↳↳ ClassConstructorDeclarationContext

      ↳↳ StatementContext

      ↳↳ CompoundStatementContext

      ↳↳ ExpressionStatementContext

      ↳↳ SelectionStatementContext

      ↳↳ IfStatementContext

      ↳↳ SwitchStatementContext

      ↳↳ SwitchLabeledStatementContext

      ↳↳ IterationStatementContext

      ↳↳ ForLoopIterationStatementContext

      ↳↳ WhileLoopIterationStatementContext

      ↳↳ DoWhileLoopIterationStatementContext

      ↳↳ JumpStatementContext

      ↳↳ ReturnStatementContext

      ↳↳ PrimaryExpressionContext

      ↳↳ LambdaPrimaryExpressionContext

      ↳↳ TangledPrimaryExpressionContext

      ↳↳ BoolPrimaryExpressionContext

      ↳↳ IdentifierPrimaryExpressionContext

      ↳↳ IdentifierContext

      ↳↳ IdentifierOrStringPrimaryExpressionContext

      ↳↳ StringPrimaryExpressionContext

      ↳↳ FStringPrimaryExpressionContext

      ↳↳ FStringSingleQuoteAtomContext

      ↳↳ FStringDoubleQuoteAtomContext

      ↳↳ NumberPrimaryExpressionContext

      ↳↳ ArrayPrimaryExpressionContext

      ↳↳ ObjectPrimaryExpressionContext

      ↳↳ ObjectPropertyContext

      ↳↳ VoidOrNullOrUndefinedPrimaryExpressionContext

      ↳↳ ComputedPrimaryExpressionContext

      ↳↳ ArgumentExpressionListContext

      ↳↳ DotNotationContext

      ↳↳ BracketNotationContext

      ↳↳ SliceNotationContext

      ↳↳ PostfixExpressionContext

      ↳↳ IncrementOrDecrementPostfixExpressionContext

      ↳↳ TypeofExpressionContext

      ↳↳ UnaryExpressionContext

      ↳↳ IncrementOrDecrementUnaryExpressionContext

      ↳↳ OperatorModifiedUnaryExpressionContext

      ↳↳ IncrementOrDecrementOperatorContext

      ↳↳ UnaryOperatorContext

      ↳↳ CastOrConvertExpressionContext

      ↳↳ ConvertExpressionContext

      ↳↳ CastExpressionContext

      ↳↳ ForceCastExpressionContext

      ↳↳ TryCastExpressionContext

      ↳↳ MultiplicativeExpressionContext

      ↳↳ AdditiveExpressionContext

      ↳↳ BitwiseShiftExpressionContext

      ↳↳ BitwiseShiftOperatorsContext

      ↳↳ InstanceOfExpressionContext

      ↳↳ MatchesExpressionContext

      ↳↳ RelationalExpressionContext

      ↳↳ EqualityExpressionContext

      ↳↳ BitwiseAndExpressionContext

      ↳↳ BitwiseXorExpressionContext

      ↳↳ BitwiseOrExpressionContext

      ↳↳ LogicalAndExpressionContext

      ↳↳ LogicalOrExpressionContext

      ↳↳ ConditionalExpressionContext

      ↳↳ AssignmentExpressionContext

      ↳↳ AssignmentOperatorContext

      ↳↳ ExpressionContext

      ↳↳ TypeSpecifierExpressionContext

      ↳↳ IdentifierTypeSpecifierExpressionContext

      ↳↳ GenericTypeSpecifierExpressionContext

      ↳↳ TypeofTypeSpecifierExpressionContext

      ↳↳ NullableTypeSpecifierExpressionContext

      ↳↳ TypeSpecifierIdentifierContext

    Table of contents

    Constructors

    • constructor

    Accessors

    • astSyntaxKind
    • labelASTKind
    • ruleIndex

    Constructors

    constructor

    • Protected new KipperParserRuleContext()

    Overrides

    ParserRuleContext.constructor

    Defined in

    kipper/core/src/compiler/lexer-parser/parser-rule-context.ts:9

    • Protected new KipperParserRuleContext(parent, invokingState)

    Parameters

    Name Type
    parent undefined | ParserRuleContext
    invokingState number

    Overrides

    ParserRuleContext.constructor

    Defined in

    kipper/core/src/compiler/lexer-parser/parser-rule-context.ts:10

    Accessors

    astSyntaxKind

    • get astSyntaxKind(): ASTKind

    Returns the specific unique kind number of this rule ctx. This is used to map the rule ctx to the correct AST node.

    For more info on this, see ParseRuleKindMapping and the documentation provided.

    Since

    0.10.0

    Returns

    ASTKind

    Defined in

    kipper/core/src/compiler/lexer-parser/parser-rule-context.ts:37


    labelASTKind

    • get labelASTKind(): undefined | ASTKind

    Returns the AST-specific label kind number of this rule ctx. This is defined if the rule ctx is a labelled alternative of a rule and the ruleIndex would only return the parent rule's kind number.

    Since

    0.10.0

    Returns

    undefined | ASTKind

    Defined in

    kipper/core/src/compiler/lexer-parser/parser-rule-context.ts:26


    ruleIndex

    • Abstract get ruleIndex(): number

    Returns

    number

    Overrides

    ParserRuleContext.ruleIndex

    Defined in

    kipper/core/src/compiler/lexer-parser/parser-rule-context.ts:19

  • Developed at:

    • Releases
    • GitHub
    • Security
    • Issue Tracker
    • License
  • Copyright © 2021-2026 Luna Klatzer, 2024-2025 Lorenz Holzbauer & Fabian Baitura.
    Kipper is licensed under the GPL-3.0-or-later license.