• Kipper

    v0.12.1
  • Downloads

  • Docs

  • Playground

  • Changelog

  • Kipper

    v0.12.1
    • Downloads

    • Docs

    • Playground

    • Changelog

      • 0.11.0 /
      • 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

      • Compiler Setup

        • Overview

          • index

          • compiler

          • errors

          • logger

          • utils

          • config

          • index

          • index

        • Overview

        • new

        • run

        • compile

        • help

        • version

    • Variables

      • Overview

      • String Type

      • Number Type

      • Boolean Type

      • Void Type

      • Null Type

      • Undefined Type

      • Array Type

      • Overview

      • Arithmetic Expression

      • Assignment Expression

      • Conditional Expressions

      • Logical Expressions

      • Bitwise Expression

      • Relational Expressions

      • Convert Expression

      • F-String Expression

      • Member Access Expression

      • Function Call Expression

      • Overview

      • Expression Statement

      • If Statement

      • While Loop

      • Do-While Loop

      • For Loop

      • Compound Statement

      • Jump Statement

    • Functions

    • Comments

    • Built-in Functions

      • 0.11.0 /
      • Kipper API /
      • Module /
      • @kipper/core /
      • compiler
    • 0.11.0 /
    • 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
    • castOrConvertExpression
    • col
    • compoundStatement
    • conditionalExpression
    • ctx
    • doWhileLoopIterationStatement
    • equalityExpression
    • expressionStatement
    • fStringPrimaryExpression
    • filePath
    • forLoopIterationStatement
    • functionCallExpression
    • functionDeclaration
    • genericTypeSpecifierExpression
    • identifierPrimaryExpression
    • identifierTypeSpecifierExpression
    • ifStatement
    • incrementOrDecrementPostfixExpression
    • incrementOrDecrementUnaryExpression
    • jumpStatement
    • lambdaExpression
    • line
    • logicalAndExpression
    • logicalOrExpression
    • memberAccessExpression
    • multiplicativeExpression
    • numberPrimaryExpression
    • objectPrimaryExpression
    • objectProperty
    • operatorModifiedUnaryExpression
    • parameterDeclaration
    • relationalExpression
    • returnStatement
    • stream
    • stringPrimaryExpression
    • switchStatement
    • tangledPrimaryExpression
    • 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:238


    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:142


    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:288


    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:253


    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:258


    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:268


    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:263


    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:178


    castOrConvertExpression

    • Optional Abstract castOrConvertExpression: TargetASTNodeSemanticAnalyser<CastOrConvertExpression>

    Performs translation-specific semantic analysis for CastOrConvertExpression instances.

    Defined in

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


    col

    • Protected col: undefined | number

    Inherited from

    KipperSemanticErrorHandler.col

    Defined in

    kipper/core/src/compiler/analysis/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:72


    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:283


    ctx

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

    Inherited from

    KipperSemanticErrorHandler.ctx

    Defined in

    kipper/core/src/compiler/analysis/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:93


    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:248


    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:87


    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:173


    filePath

    • Protected filePath: undefined | string

    Inherited from

    KipperSemanticErrorHandler.filePath

    Defined in

    kipper/core/src/compiler/analysis/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:105


    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:213


    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:127


    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:188


    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:157


    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:183


    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:77


    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:208


    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:218


    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:111


    lambdaExpression

    • Optional Abstract lambdaExpression: TargetASTNodeSemanticAnalyser<LambdaExpression>

    Performs translation-specific semantic analysis for LambdaExpression instances.

    Defined in

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


    line

    • Protected line: undefined | number

    Inherited from

    KipperSemanticErrorHandler.line

    Defined in

    kipper/core/src/compiler/analysis/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:273


    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:278


    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:163


    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:233


    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:137


    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:147


    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:152


    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:223


    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:122


    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:243


    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:117


    stream

    • Protected stream: undefined | KipperFileStream

    Inherited from

    KipperSemanticErrorHandler.stream

    Defined in

    kipper/core/src/compiler/analysis/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:168


    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:82


    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:198


    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:193


    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:132


    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:203


    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:99

    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/analysis/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/analysis/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.