• 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: KipperTargetSemanticAnalyser

    compiler.KipperTargetSemanticAnalyser

    Represents a Semantic analyser that is specific for a KipperCompileTarget.

    Since

    0.10.0

    Hierarchy

    • KipperSemanticErrorHandler

      ↳ KipperTargetSemanticAnalyser

    Table of contents

    Constructors

    • constructor

    Properties

    • additiveExpression
    • arrayPrimaryExpression
    • assignmentExpression
    • bitwiseAndExpression
    • bitwiseOrExpression
    • bitwiseShiftExpression
    • bitwiseXorExpression
    • boolPrimaryExpression
    • castExpression
    • classConstructorDeclaration
    • classDeclaration
    • classMethodDeclaration
    • col
    • compoundStatement
    • conditionalExpression
    • convertExpression
    • ctx
    • doWhileLoopIterationStatement
    • equalityExpression
    • expressionStatement
    • fStringPrimaryExpression
    • filePath
    • forLoopIterationStatement
    • forceCastExpression
    • functionCallExpression
    • functionDeclaration
    • genericTypeSpecifierExpression
    • identifierPrimaryExpression
    • identifierTypeSpecifierExpression
    • ifStatement
    • incrementOrDecrementPostfixExpression
    • incrementOrDecrementUnaryExpression
    • instanceOfExpression
    • interfaceDeclaration
    • interfaceMethodDeclaration
    • interfacePropertyDeclaration
    • jumpStatement
    • lambdaPrimaryExpression
    • line
    • logicalAndExpression
    • logicalOrExpression
    • matchesExpression
    • memberAccessExpression
    • multiplicativeExpression
    • newInstantiationExpression
    • nullableTypeSpecifierExpression
    • numberPrimaryExpression
    • objectPrimaryExpression
    • objectProperty
    • operatorModifiedUnaryExpression
    • parameterDeclaration
    • relationalExpression
    • returnStatement
    • stream
    • stringPrimaryExpression
    • switchStatement
    • tangledPrimaryExpression
    • tryCastExpression
    • typeofExpression
    • typeofTypeSpecifierExpression
    • variableDeclaration
    • voidOrNullOrUndefinedPrimaryExpression
    • whileLoopIterationStatement

    Methods

    • error
    • setTracebackData

    Constructors

    constructor

    • new KipperTargetSemanticAnalyser()

    Inherited from

    KipperSemanticErrorHandler.constructor

    Properties

    additiveExpression

    • Optional Abstract additiveExpression: TargetASTNodeSemanticAnalyser<AdditiveExpression>

    Performs translation-specific semantic analysis for AdditiveExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:310


    arrayPrimaryExpression

    • Optional Abstract arrayPrimaryExpression: TargetASTNodeSemanticAnalyser<ArrayPrimaryExpression>

    Performs translation-specific semantic analysis for ArrayPrimaryExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:194


    assignmentExpression

    • Optional Abstract assignmentExpression: TargetASTNodeSemanticAnalyser<AssignmentExpression>

    Performs translation-specific semantic analysis for AssignmentExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:360


    bitwiseAndExpression

    • Optional Abstract bitwiseAndExpression: TargetASTNodeSemanticAnalyser<BitwiseAndExpression>

    Performs translation-specific semantic analysis for BitwiseAndExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:325


    bitwiseOrExpression

    • Optional Abstract bitwiseOrExpression: TargetASTNodeSemanticAnalyser<BitwiseOrExpression>

    Performs translation-specific semantic analysis for BitwiseOrExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:330


    bitwiseShiftExpression

    • Optional Abstract bitwiseShiftExpression: TargetASTNodeSemanticAnalyser<BitwiseShiftExpression>

    Performs translation-specific semantic analysis for BitwiseShiftExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:340


    bitwiseXorExpression

    • Optional Abstract bitwiseXorExpression: TargetASTNodeSemanticAnalyser<BitwiseXorExpression>

    Performs translation-specific semantic analysis for BitwiseXorExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:335


    boolPrimaryExpression

    • Optional Abstract boolPrimaryExpression: TargetASTNodeSemanticAnalyser<BoolPrimaryExpression>

    Performs translation-specific semantic analysis for BoolPrimaryExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:230


    castExpression

    • Optional Abstract castExpression: TargetASTNodeSemanticAnalyser<CastExpression>

    Performs translation-specific semantic analysis for CastExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:285


    classConstructorDeclaration

    • Optional Abstract classConstructorDeclaration: TargetASTNodeSemanticAnalyser<ClassConstructorDeclaration>

    Performs translation-specific semantic analysis for ClassConstructorDeclaration instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:169


    classDeclaration

    • Optional Abstract classDeclaration: TargetASTNodeSemanticAnalyser<ClassDeclaration>

    Performs translation-specific semantic analysis for ClassDeclaration instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:154


    classMethodDeclaration

    • Optional Abstract classMethodDeclaration: TargetASTNodeSemanticAnalyser<ClassMethodDeclaration>

    Performs translation-specific semantic analysis for ClassMethodDeclaration instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:164


    col

    • Protected col: undefined | number

    Inherited from

    KipperSemanticErrorHandler.col

    Defined in

    kipper/core/src/compiler/semantics/analyser/err-handler/semantics-error-handler.ts:16


    compoundStatement

    • Optional Abstract compoundStatement: TargetASTNodeSemanticAnalyser<CompoundStatement>

    Performs translation-specific semantic analysis for CompoundStatement instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:89


    conditionalExpression

    • Optional Abstract conditionalExpression: TargetASTNodeSemanticAnalyser<ConditionalExpression>

    Performs translation-specific semantic analysis for ConditionalExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:355


    convertExpression

    • Optional Abstract convertExpression: TargetASTNodeSemanticAnalyser<CastOrConvertExpression<CastOrConvertExpressionSemantics, CastOrConvertExpressionTypeSemantics>>

    Performs translation-specific semantic analysis for ConvertCastExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:300


    ctx

    • Protected ctx: undefined | CompilableASTNode<SemanticData, TypeData>

    Inherited from

    KipperSemanticErrorHandler.ctx

    Defined in

    kipper/core/src/compiler/semantics/analyser/err-handler/semantics-error-handler.ts:17


    doWhileLoopIterationStatement

    • Optional Abstract doWhileLoopIterationStatement: TargetASTNodeSemanticAnalyser<DoWhileLoopIterationStatement>

    Translates a ForLoopIterationStatement into a specific language.

    Since

    0.10.0

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:110


    equalityExpression

    • Optional Abstract equalityExpression: TargetASTNodeSemanticAnalyser<EqualityExpression>

    Performs translation-specific semantic analysis for EqualityExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:320


    expressionStatement

    • Optional Abstract expressionStatement: TargetASTNodeSemanticAnalyser<ExpressionStatement>

    Performs translation-specific semantic analysis for ExpressionStatement instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:104


    fStringPrimaryExpression

    • Optional Abstract fStringPrimaryExpression: TargetASTNodeSemanticAnalyser<FStringPrimaryExpression>

    Performs translation-specific semantic analysis for FStringPrimaryExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:225


    filePath

    • Protected filePath: undefined | string

    Inherited from

    KipperSemanticErrorHandler.filePath

    Defined in

    kipper/core/src/compiler/semantics/analyser/err-handler/semantics-error-handler.ts:18


    forLoopIterationStatement

    • Optional Abstract forLoopIterationStatement: TargetASTNodeSemanticAnalyser<ForLoopIterationStatement>

    Translates a ForLoopIterationStatement into a specific language.

    Since

    0.10.0

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:122


    forceCastExpression

    • Optional Abstract forceCastExpression: TargetASTNodeSemanticAnalyser<ForceCastExpression>

    Performs translation-specific semantic analysis for ForceCastExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:295


    functionCallExpression

    • Optional Abstract functionCallExpression: TargetASTNodeSemanticAnalyser<FunctionCallExpression>

    Performs translation-specific semantic analysis for FunctionCallExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:270


    functionDeclaration

    • Optional Abstract functionDeclaration: TargetASTNodeSemanticAnalyser<FunctionDeclaration>

    Performs translation-specific semantic analysis for FunctionDeclaration instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:144


    genericTypeSpecifierExpression

    • Optional Abstract genericTypeSpecifierExpression: TargetASTNodeSemanticAnalyser<GenericTypeSpecifierExpression>

    Performs translation-specific semantic analysis for GenericTypeSpecifierExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:240


    identifierPrimaryExpression

    • Optional Abstract identifierPrimaryExpression: TargetASTNodeSemanticAnalyser<IdentifierPrimaryExpression>

    Performs translation-specific semantic analysis for IdentifierPrimaryExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:209


    identifierTypeSpecifierExpression

    • Optional Abstract identifierTypeSpecifierExpression: TargetASTNodeSemanticAnalyser<IdentifierTypeSpecifierExpression>

    Performs translation-specific semantic analysis for IdentifierTypeSpecifierExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:235


    ifStatement

    • Optional Abstract ifStatement: TargetASTNodeSemanticAnalyser<IfStatement>

    Performs translation-specific semantic analysis for IfStatement instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:94


    incrementOrDecrementPostfixExpression

    • Optional Abstract incrementOrDecrementPostfixExpression: TargetASTNodeSemanticAnalyser<IncrementOrDecrementPostfixExpression>

    Performs translation-specific semantic analysis for incrementOrDecrementPostfixExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:265


    incrementOrDecrementUnaryExpression

    • Optional Abstract incrementOrDecrementUnaryExpression: TargetASTNodeSemanticAnalyser<IncrementOrDecrementUnaryExpression>

    Performs translation-specific semantic analysis for IncrementOrDecrementUnaryExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:275


    instanceOfExpression

    • Optional Abstract instanceOfExpression: TargetASTNodeSemanticAnalyser<InstanceOfExpression>

    Performs translation-specific semantic analysis for InstanceOfExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:380


    interfaceDeclaration

    • Optional Abstract interfaceDeclaration: TargetASTNodeSemanticAnalyser<InterfaceDeclaration>

    Performs translation-specific semantic analysis for InterfaceDeclaration instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:174


    interfaceMethodDeclaration

    • Optional Abstract interfaceMethodDeclaration: TargetASTNodeSemanticAnalyser<InterfaceMethodDeclaration>

    Performs translation-specific semantic analysis for InterfaceMethodDeclaration instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:184


    interfacePropertyDeclaration

    • Optional Abstract interfacePropertyDeclaration: TargetASTNodeSemanticAnalyser<InterfacePropertyDeclaration>

    Performs translation-specific semantic analysis for InterfacePropertyDeclaration instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:179


    jumpStatement

    • Optional Abstract jumpStatement: TargetASTNodeSemanticAnalyser<JumpStatement>

    Performs translation-specific semantic analysis for JumpStatement instances.

    Since

    0.10.0

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:128


    lambdaPrimaryExpression

    • Optional Abstract lambdaPrimaryExpression: TargetASTNodeSemanticAnalyser<LambdaPrimaryExpression>

    Performs translation-specific semantic analysis for LambdaPrimaryExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:365


    line

    • Protected line: undefined | number

    Inherited from

    KipperSemanticErrorHandler.line

    Defined in

    kipper/core/src/compiler/semantics/analyser/err-handler/semantics-error-handler.ts:15


    logicalAndExpression

    • Optional Abstract logicalAndExpression: TargetASTNodeSemanticAnalyser<LogicalAndExpression>

    Performs translation-specific semantic analysis for LogicalAndExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:345


    logicalOrExpression

    • Optional Abstract logicalOrExpression: TargetASTNodeSemanticAnalyser<LogicalOrExpression>

    Performs translation-specific semantic analysis for LogicalOrExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:350


    matchesExpression

    • Optional Abstract matchesExpression: TargetASTNodeSemanticAnalyser<MatchesExpression>

    Performs translation-specific semantic analysis for MatchesExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:375


    memberAccessExpression

    • Optional Abstract memberAccessExpression: TargetASTNodeSemanticAnalyser<MemberAccessExpression>

    Performs translation-specific semantic analysis for MemberAccessExpression instances.

    Since

    0.10.0

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:215


    multiplicativeExpression

    • Optional Abstract multiplicativeExpression: TargetASTNodeSemanticAnalyser<MultiplicativeExpression>

    Performs translation-specific semantic analysis for MultiplicativeExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:305


    newInstantiationExpression

    • Optional Abstract newInstantiationExpression: TargetASTNodeSemanticAnalyser<NewInstantiationExpression>

    Performs translation-specific semantic analysis for NewInstantiationExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:159


    nullableTypeSpecifierExpression

    • Optional Abstract nullableTypeSpecifierExpression: TargetASTNodeSemanticAnalyser<NullableTypeSpecifierExpression>

    Performs translation-specific semantic analysis for NullableTypeSpecifierExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:250


    numberPrimaryExpression

    • Optional Abstract numberPrimaryExpression: TargetASTNodeSemanticAnalyser<NumberPrimaryExpression>

    Performs translation-specific semantic analysis for NumberPrimaryExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:189


    objectPrimaryExpression

    • Optional Abstract objectPrimaryExpression: TargetASTNodeSemanticAnalyser<ObjectPrimaryExpression>

    Performs translation-specific semantic analysis for ObjectPrimaryExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:199


    objectProperty

    • Optional Abstract objectProperty: TargetASTNodeSemanticAnalyser<ObjectProperty>

    Performs translation-specific semantic analysis for ObjectProperty instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:204


    operatorModifiedUnaryExpression

    • Optional Abstract operatorModifiedUnaryExpression: TargetASTNodeSemanticAnalyser<OperatorModifiedUnaryExpression>

    Performs translation-specific semantic analysis for OperatorModifiedUnaryExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:280


    parameterDeclaration

    • Optional Abstract parameterDeclaration: TargetASTNodeSemanticAnalyser<ParameterDeclaration>

    Performs translation-specific semantic analysis for ParameterDeclaration instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:139


    relationalExpression

    • Optional Abstract relationalExpression: TargetASTNodeSemanticAnalyser<RelationalExpression>

    Performs translation-specific semantic analysis for RelationalExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:315


    returnStatement

    • Optional Abstract returnStatement: TargetASTNodeSemanticAnalyser<ReturnStatement>

    Translates a JumpStatement into a specific language.

    Since

    0.10.0

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:134


    stream

    • Protected stream: undefined | KipperFileStream

    Inherited from

    KipperSemanticErrorHandler.stream

    Defined in

    kipper/core/src/compiler/semantics/analyser/err-handler/semantics-error-handler.ts:19


    stringPrimaryExpression

    • Optional Abstract stringPrimaryExpression: TargetASTNodeSemanticAnalyser<StringPrimaryExpression>

    Performs translation-specific semantic analysis for StringPrimaryExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:220


    switchStatement

    • Optional Abstract switchStatement: TargetASTNodeSemanticAnalyser<SwitchStatement>

    Performs translation-specific semantic analysis for SwitchStatement instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:99


    tangledPrimaryExpression

    • Optional Abstract tangledPrimaryExpression: TargetASTNodeSemanticAnalyser<TangledPrimaryExpression>

    Performs translation-specific semantic analysis for TangledPrimaryExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:255


    tryCastExpression

    • Optional Abstract tryCastExpression: TargetASTNodeSemanticAnalyser<TryCastExpression>

    Performs translation-specific semantic analysis for TryCastExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:290


    typeofExpression

    • Optional Abstract typeofExpression: TargetASTNodeSemanticAnalyser<TypeofExpression>

    Performs translation-specific semantic analysis for TypeofExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:370


    typeofTypeSpecifierExpression

    • Optional Abstract typeofTypeSpecifierExpression: TargetASTNodeSemanticAnalyser<TypeofTypeSpecifierExpression>

    Performs translation-specific semantic analysis for TypeofTypeSpecifierExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:245


    variableDeclaration

    • Optional Abstract variableDeclaration: TargetASTNodeSemanticAnalyser<VariableDeclaration>

    Performs translation-specific semantic analysis for VariableDeclaration instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:149


    voidOrNullOrUndefinedPrimaryExpression

    • Optional Abstract voidOrNullOrUndefinedPrimaryExpression: TargetASTNodeSemanticAnalyser<VoidOrNullOrUndefinedPrimaryExpression>

    Performs translation-specific semantic analysis for VoidOrNullOrUndefinedPrimaryExpression instances.

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:260


    whileLoopIterationStatement

    • Optional Abstract whileLoopIterationStatement: TargetASTNodeSemanticAnalyser<WhileLoopIterationStatement>

    Translates a ForLoopIterationStatement into a specific language.

    Since

    0.10.0

    Defined in

    kipper/core/src/compiler/target-presets/semantic-analyser.ts:116

    Methods

    error

    ▸ Protected error(error): KipperError

    Updates the error and adds the proper traceback data, and returns it.

    This function also automatically logs the error.

    Parameters

    Name Type Description
    error KipperError The error to update.

    Returns

    KipperError

    The Kipper error.

    Inherited from

    KipperSemanticErrorHandler.error

    Defined in

    kipper/core/src/compiler/semantics/analyser/err-handler/semantics-error-handler.ts:52


    setTracebackData

    ▸ setTracebackData(data): void

    Sets the traceback related metadata that will be used to create a traceback for an KipperError instance.

    In case that data.ctx is set and other fields are missing, these fields will be filled up using the data in the data.ctx AST node ctx instance.

    Since

    0.8.0

    Parameters

    Name Type Description
    data Object The traceback data that will be used to initialise an KipperError instance.
    data.col? number -
    data.ctx? CompilableASTNode<SemanticData, TypeData> -
    data.filePath? string -
    data.line? number -
    data.stream? KipperFileStream -

    Returns

    void

    Inherited from

    KipperSemanticErrorHandler.setTracebackData

    Defined in

    kipper/core/src/compiler/semantics/analyser/err-handler/semantics-error-handler.ts:29

  • 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.