• Kipper

    v0.12.1
  • Downloads

  • Docs

  • Playground

  • Changelog

  • Kipper

    v0.12.1
    • Downloads

    • Docs

    • Playground

    • Changelog

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

      • Type Consistency

      • Runtime Type Casting

      • Strict Compiler Inspection

      • Integrated Runtime Library

    • 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

      • latest /
      • Kipper API /
      • Module /
      • @kipper/core /
      • compiler
    • latest /
    • 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
    • classConstructorDeclaration
    • classDeclaration
    • classMethodDeclaration
    • col
    • compoundStatement
    • conditionalExpression
    • ctx
    • doWhileLoopIterationStatement
    • equalityExpression
    • expressionStatement
    • fStringPrimaryExpression
    • filePath
    • forLoopIterationStatement
    • functionCallExpression
    • functionDeclaration
    • genericTypeSpecifierExpression
    • identifierPrimaryExpression
    • identifierTypeSpecifierExpression
    • ifStatement
    • incrementOrDecrementPostfixExpression
    • incrementOrDecrementUnaryExpression
    • instanceOfExpression
    • interfaceDeclaration
    • interfaceMethodDeclaration
    • interfacePropertyDeclaration
    • jumpStatement
    • lambdaPrimaryExpression
    • line
    • logicalAndExpression
    • logicalOrExpression
    • matchesExpression
    • memberAccessExpression
    • multiplicativeExpression
    • newInstantiationExpression
    • numberPrimaryExpression
    • objectPrimaryExpression
    • objectProperty
    • operatorModifiedUnaryExpression
    • parameterDeclaration
    • relationalExpression
    • returnStatement
    • stream
    • stringPrimaryExpression
    • switchStatement
    • tangledPrimaryExpression
    • 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:286


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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

    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.