Namespace: compiler
Table of contents
Classes
- ASTNodeFactory
- ActualAdditiveExpressionContext
- ActualAssignmentExpressionContext
- ActualCastOrConvertExpressionContext
- ActualConditionalExpressionContext
- ActualEqualityExpressionContext
- ActualLogicalAndExpressionContext
- ActualLogicalOrExpressionContext
- ActualMultiplicativeExpressionContext
- ActualRelationalExpressionContext
- AdditiveExpression
- AdditiveExpressionContext
- AnalysableASTNode
- ArgumentExpressionListContext
- ArrayLiteralPrimaryExpression
- ArrayLiteralPrimaryExpressionContext
- AssignmentExpression
- AssignmentExpressionContext
- AssignmentOperatorContext
- BlockItemContext
- BlockItemListContext
- BoolPrimaryExpression
- BoolPrimaryExpressionContext
- BracketNotationContext
- BracketNotationMemberAccessExpressionContext
- CastOrConvertExpression
- CastOrConvertExpressionContext
- CheckedType
- ComparativeExpression
- CompilableASTNode
- CompilationUnitContext
- CompoundStatement
- CompoundStatementContext
- ComputedPrimaryExpressionContext
- ConditionalExpression
- ConditionalExpressionContext
- ConstantExpression
- Declaration
- DeclarationASTNodeFactory
- DeclarationContext
- DeclaratorContext
- DirectDeclaratorContext
- DoWhileLoopIterationStatementContext
- DoWhileLoopStatement
- DotNotationContext
- DotNotationMemberAccessExpressionContext
- EqualityExpression
- EqualityExpressionContext
- EvaluatedCompileConfig
- ExplicitCallFunctionCallExpressionContext
- Expression
- ExpressionASTNodeFactory
- ExpressionContext
- ExpressionStatement
- ExpressionStatementContext
- ExternalBlockItemContext
- ExternalItemContext
- FStringPrimaryExpression
- FStringPrimaryExpressionContext
- ForLoopIterationStatementContext
- ForLoopStatement
- FunctionCallExpression
- FunctionCallExpressionContext
- FunctionDeclaration
- FunctionDeclarationContext
- FunctionScope
- GenericTypeSpecifierContext
- GenericTypeSpecifierExpression
- GlobalScope
- IdentifierContext
- IdentifierPrimaryExpression
- IdentifierPrimaryExpressionContext
- IdentifierTypeSpecifierContext
- IdentifierTypeSpecifierExpression
- IfStatement
- IfStatementContext
- IncrementOrDecrementOperatorContext
- IncrementOrDecrementPostfixExpression
- IncrementOrDecrementPostfixExpressionContext
- IncrementOrDecrementUnaryExpression
- IncrementOrDecrementUnaryExpressionContext
- InitDeclaratorContext
- InitializerContext
- IterationStatement
- IterationStatementContext
- JumpStatement
- JumpStatementContext
- KipperCompileResult
- KipperCompileTarget
- KipperCompiler
- KipperFileASTGenerator
- KipperLexer
- KipperOptimiser
- KipperParseStream
- KipperParser
- KipperParserRuleContext
- KipperProgramContext
- KipperSemanticChecker
- KipperSemanticErrorHandler
- KipperSemanticsAsserter
- KipperTargetBuiltInGenerator
- KipperTargetCodeGenerator
- KipperTargetSemanticAnalyser
- KipperTypeChecker
- LocalScope
- LogicalAndExpression
- LogicalAndExpressionContext
- LogicalExpression
- LogicalOrExpression
- LogicalOrExpressionContext
- MemberAccessExpression
- MultiplicativeExpression
- MultiplicativeExpressionContext
- NumberPrimaryExpression
- NumberPrimaryExpressionContext
- OperatorModifiedUnaryExpression
- OperatorModifiedUnaryExpressionContext
- ParameterDeclaration
- ParameterDeclarationContext
- ParameterListContext
- ParserASTNode
- PassOnAdditiveExpressionContext
- PassOnAssignmentExpressionContext
- PassOnCastOrConvertExpressionContext
- PassOnConditionalExpressionContext
- PassOnEqualityExpressionContext
- PassOnLogicalAndExpressionContext
- PassOnLogicalOrExpressionContext
- PassOnMultiplicativeExpressionContext
- PassOnRelationalExpressionContext
- PassOncomputedPrimaryExpressionContext
- PostfixExpressionContext
- PrimaryExpressionContext
- RelationalExpression
- RelationalExpressionContext
- ReturnStatement
- ReturnStatementContext
- RootASTNode
- Scope
- ScopeDeclaration
- ScopeFunctionDeclaration
- ScopeParameterDeclaration
- ScopeVariableDeclaration
- SelectionStatementContext
- SliceNotationContext
- SliceNotationMemberAccessExpressionContext
- Statement
- StatementASTNodeFactory
- StatementContext
- StorageTypeSpecifierContext
- StringPrimaryExpression
- StringPrimaryExpressionContext
- SwitchLabeledStatementContext
- SwitchStatement
- SwitchStatementContext
- TangledPrimaryExpression
- TangledPrimaryExpressionContext
- TranslationUnitContext
- Type
- TypeSpecifierContext
- TypeSpecifierExpression
- TypeSpecifierIdentifierContext
- TypeofTypeSpecifierContext
- TypeofTypeSpecifierExpression
- UnaryExpression
- UnaryExpressionContext
- UnaryOperatorContext
- UncheckedType
- UndefinedCustomType
- VariableDeclaration
- VariableDeclarationContext
- VoidOrNullOrUndefinedPrimaryExpression
- VoidOrNullOrUndefinedPrimaryExpressionContext
- WhileLoopIterationStatementContext
- WhileLoopStatement
Interfaces
- AdditiveExpressionSemantics
- AdditiveExpressionTypeSemantics
- ArithmeticExpressionSemantics
- ArithmeticExpressionTypeSemantics
- ArrayLiteralPrimaryExpressionSemantics
- ArrayLiteralPrimaryExpressionTypeSemantics
- AssignmentExpressionSemantics
- AssignmentExpressionTypeSemantics
- BoolPrimaryExpressionSemantics
- BoolPrimaryExpressionTypeSemantics
- BuiltInFunction
- BuiltInFunctionArgument
- BuiltInVariable
- CastOrConvertExpressionSemantics
- CastOrConvertExpressionTypeSemantics
- ComparativeExpressionSemantics
- ComparativeExpressionTypeSemantics
- CompileConfig
- ConditionalExpressionSemantics
- ConditionalExpressionTypeSemantics
- ConstantExpressionSemantics
- DeclarationSemantics
- DeclarationTypeData
- DoWhileLoopStatementSemantics
- EqualityExpressionSemantics
- EqualityExpressionTypeSemantics
- ExpressionSemantics
- ExpressionTypeSemantics
- FStringPrimaryExpressionSemantics
- FStringPrimaryExpressionTypeSemantics
- ForLoopStatementSemantics
- FunctionCallExpressionSemantics
- FunctionCallPostfixTypeSemantics
- FunctionDeclarationSemantics
- FunctionDeclarationTypeSemantics
- GenericTypeSpecifierExpressionSemantics
- GenericTypeSpecifierExpressionTypeSemantics
- IdentifierPrimaryExpressionSemantics
- IdentifierPrimaryExpressionTypeSemantics
- IdentifierTypeSpecifierExpressionSemantics
- IdentifierTypeSpecifierExpressionTypeSemantics
- IfStatementSemantics
- IncrementOrDecrementPostfixExpressionSemantics
- IncrementOrDecrementPostfixExpressionTypeSemantics
- IncrementOrDecrementUnaryExpressionSemantics
- IncrementOrDecrementUnaryTypeSemantics
- InternalFunction
- InternalFunctionArgument
- InternalReference
- IterationStatementSemantics
- JumpStatementSemantics
- KipperParserListener
- KipperParserVisitor
- LogicalAndExpressionSemantics
- LogicalAndExpressionTypeSemantics
- LogicalExpressionSemantics
- LogicalExpressionTypeSemantics
- LogicalOrExpressionSemantics
- LogicalOrExpressionTypeSemantics
- MemberAccessExpressionSemantics
- MemberAccessExpressionTypeSemantics
- MultiplicativeExpressionSemantics
- MultiplicativeTypeSemantics
- NoSemantics
- NoTypeSemantics
- NumberPrimaryExpressionSemantics
- NumberPrimaryExpressionTypeSemantics
- OperatorModifiedUnaryExpressionSemantics
- OperatorModifiedUnaryTypeSemantics
- OptimisationOptions
- ParameterDeclarationSemantics
- ParameterDeclarationTypeSemantics
- ParseData
- Reference
- RelationalExpressionSemantics
- RelationalExpressionTypeSemantics
- ReturnStatementSemantics
- ReturnStatementTypeSemantics
- ScopeNode
- StringPrimaryExpressionSemantics
- StringPrimaryExpressionTypeSemantics
- SymbolTable
- TangledPrimaryExpressionSemantics
- TangledPrimaryTypeSemantics
- TargetAnalysableNode
- TargetCompilableNode
- TypeSpecifierExpressionSemantics
- TypeSpecifierExpressionTypeSemantics
- TypeofTypeSpecifierExpressionSemantics
- TypeofTypeSpecifierExpressionTypeSemantics
- UnaryExpressionSemantics
- UnaryExpressionTypeSemantics
- VariableDeclarationSemantics
- VariableDeclarationTypeSemantics
- VoidOrNullOrUndefinedPrimaryExpressionSemantics
- VoidOrNullOrUndefinedPrimaryExpressionTypeSemantics
- WhileLoopStatementSemantics
Type Aliases
- ASTComparativeExpressionKind
- ASTConstantExpressionKind
- ASTDeclarationKind
- ASTExpressionKind
- ASTKind
- ASTLogicalExpressionKind
- ASTNodeParserContext
- ASTStatementKind
- ASTTypeSpecifierExpressionKind
- ASTUnaryExpressionKind
- AnalysableNodeChild
- AnalysableNodeParent
- CompilableNodeChild
- CompilableNodeParent
- ConstructableASTDeclaration
- ConstructableASTDeclarationClass
- ConstructableASTExpression
- ConstructableASTExpressionClass
- ConstructableASTKind
- ConstructableASTNode
- ConstructableASTNodeClass
- ConstructableASTStatement
- ConstructableASTStatementClass
- JmpStatementType
- KipperAdditiveOperator
- KipperArg
- KipperArithmeticAssignOperator
- KipperArithmeticOperator
- KipperAssignOperator
- KipperBoolType
- KipperBoolTypeLiterals
- KipperComparativeOperator
- KipperCompilableType
- KipperEqualAssignOperator
- KipperEqualityOperator
- KipperErrorType
- KipperFuncType
- KipperFunction
- KipperIncrementOrDecrementOperator
- KipperListType
- KipperLogicalAndOperator
- KipperLogicalOperator
- KipperLogicalOrOperator
- KipperMetaType
- KipperMinusOperator
- KipperMultiplicativeOperator
- KipperNegateOperator
- KipperNullType
- KipperNumType
- KipperParam
- KipperPlusOperator
- KipperPrimitiveType
- KipperReferenceable
- KipperReferenceableFunction
- KipperRelationalOperator
- KipperSignOperator
- KipperStorageType
- KipperStrType
- KipperType
- KipperUnaryModifierOperator
- KipperUnaryOperator
- KipperUndefinedType
- KipperVariable
- KipperVoidType
- MemberAccessExpressionContext
- ParserComparativeExpressionContext
- ParserConstantExpressionContext
- ParserDeclarationContext
- ParserExpressionContext
- ParserIterationStatementContext
- ParserIterationStatementKind
- ParserLogicalExpressionContext
- ParserStatementContext
- ParserTypeSpecifierExpressionContext
- ParserUnaryExpressionContext
- SemanticData
- TargetASTNodeCodeGenerator
- TargetASTNodeSemanticAnalyser
- TargetSetUpCodeGenerator
- TargetWrapUpCodeGenerator
- TranslatedCodeLine
- TranslatedCodeToken
- TranslatedExpression
- TypeData
Variables
- ParserASTMapping
- defaultOptimisationOptions
- isBrowser
- kipperAdditiveOperators
- kipperArithmeticAssignOperators
- kipperArithmeticOperators
- kipperAssignOperators
- kipperBoolType
- kipperComparativeOperators
- kipperCompilableTypes
- kipperEqualAssignOperator
- kipperEqualityOperators
- kipperFuncType
- kipperIncrementOrDecrementOperators
- kipperInternalBuiltInFunctions
- kipperListType
- kipperLogicalAndOperator
- kipperLogicalOperator
- kipperLogicalOrOperator
- kipperMetaType
- kipperMinusOperator
- kipperMultiplicativeOperators
- kipperNegateOperator
- kipperNullType
- kipperNumType
- kipperPlusOperator
- kipperPrimitiveTypes
- kipperRelationalOperators
- kipperRuntimeBuiltInFunctions
- kipperRuntimeBuiltInVariables
- kipperSignOperators
- kipperStorageTypes
- kipperStrType
- kipperSupportedConversions
- kipperUnaryModifierOperators
- kipperUnaryOperators
- kipperUndefinedType
- kipperVoidType
Functions
Type Aliases
ASTComparativeExpressionKind
Ƭ ASTComparativeExpressionKind: typeof RULE_equalityExpression
| typeof RULE_relationalExpression
Union type of all possible kind values for a constructable ComparativeExpression AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/expressions.ts:2164
ASTConstantExpressionKind
Ƭ ASTConstantExpressionKind: typeof RULE_numberPrimaryExpression
| typeof RULE_stringPrimaryExpression
| typeof RULE_boolPrimaryExpression
| typeof RULE_voidOrNullOrUndefinedPrimaryExpression
| typeof RULE_arrayLiteralPrimaryExpression
Union type of all possible kind values for a constructable ConstantExpression AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/expressions.ts:318
ASTDeclarationKind
Ƭ ASTDeclarationKind: typeof RULE_functionDeclaration
| typeof RULE_parameterDeclaration
| typeof RULE_variableDeclaration
Union type of all possible kind values that have a constructable Declaration AST node.
Note that not all KipperParser rule context classes have a corresponding AST node class. For example, the declaration rule context has no corresponding AST node class because it is a union of all possible declaration types.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/ast-types.ts:118
ASTExpressionKind
Ƭ ASTExpressionKind: typeof RULE_numberPrimaryExpression
| typeof RULE_arrayLiteralPrimaryExpression
| typeof RULE_identifierPrimaryExpression
| typeof RULE_voidOrNullOrUndefinedPrimaryExpression
| typeof RULE_boolPrimaryExpression
| typeof RULE_stringPrimaryExpression
| typeof RULE_fStringPrimaryExpression
| typeof RULE_tangledPrimaryExpression
| typeof RULE_incrementOrDecrementPostfixExpression
| typeof RULE_functionCallExpression
| typeof RULE_incrementOrDecrementUnaryExpression
| typeof RULE_operatorModifiedUnaryExpression
| typeof RULE_castOrConvertExpression
| typeof RULE_multiplicativeExpression
| typeof RULE_additiveExpression
| typeof RULE_relationalExpression
| typeof RULE_equalityExpression
| typeof RULE_logicalAndExpression
| typeof RULE_logicalOrExpression
| typeof RULE_conditionalExpression
| typeof RULE_assignmentExpression
| typeof RULE_identifierTypeSpecifier
| typeof RULE_genericTypeSpecifier
| typeof RULE_typeofTypeSpecifier
| typeof RULE_memberAccessExpression
Union type of all possible kind values that have a constructable Expression AST node.
Note that not all KipperParser rule context classes have a corresponding AST node class. For example, the primaryExpression rule context has no corresponding AST node class because it is a union of all possible primary expression types.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/ast-types.ts:146
ASTKind
Ƭ ASTKind: typeof ParserASTMapping
[keyof typeof ParserASTMapping
]
Union type of every possible AST kind number mapped to a KipperParser rule.
Not every number contained here is mapped to a constructable AST node. Some may be only used for internal purposes inside the parser. For completion’s sake, all numbers are listed here regardless.
Since
0.10.0
Defined in
kipper/core/src/compiler/parser/parser-ast-mapping.ts:98
ASTLogicalExpressionKind
Ƭ ASTLogicalExpressionKind: typeof RULE_logicalAndExpression
| typeof RULE_logicalOrExpression
Union type of all possible kind values for a constructable LogicalExpression AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/expressions.ts:2397
ASTNodeParserContext
Ƭ ASTNodeParserContext: ParserExpressionContext
| ParserStatementContext
| ParserDeclarationContext
Union type of all rule context classes implemented by the KipperParser that have a corresponding AST node class.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/ast-types.ts:108
ASTStatementKind
Ƭ ASTStatementKind: typeof RULE_compoundStatement
| typeof RULE_ifStatement
| typeof RULE_switchStatement
| typeof RULE_expressionStatement
| typeof RULE_doWhileLoopIterationStatement
| typeof RULE_whileLoopIterationStatement
| typeof RULE_forLoopIterationStatement
| typeof RULE_jumpStatement
| typeof RULE_returnStatement
Union type of all possible kind values for a Statement AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/ast-types.ts:127
ASTTypeSpecifierExpressionKind
Ƭ ASTTypeSpecifierExpressionKind: typeof RULE_identifierTypeSpecifier
| typeof RULE_genericTypeSpecifier
| typeof RULE_typeofTypeSpecifier
Union type of all possible kind values for a constructable TypeSpecifierExpression AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/expressions.ts:844
ASTUnaryExpressionKind
Ƭ ASTUnaryExpressionKind: typeof RULE_incrementOrDecrementUnaryExpression
| typeof RULE_operatorModifiedUnaryExpression
Union type of all possible kind values for a constructable UnaryExpression AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/expressions.ts:1610
AnalysableNodeChild
Ƭ AnalysableNodeChild: AnalysableASTNode
An eligible parent for an analysable AST node.
Defined in
kipper/core/src/compiler/ast/analysable-ast-node.ts:25
AnalysableNodeParent
Ƭ AnalysableNodeParent: AnalysableASTNode
| RootASTNode
An eligible parent for an analysable AST node.
Defined in
kipper/core/src/compiler/ast/analysable-ast-node.ts:20
CompilableNodeChild
Ƭ CompilableNodeChild: CompilableASTNode
An eligible child for a compilable AST node.
Since
0.8.0
Defined in
kipper/core/src/compiler/ast/compilable-ast-node.ts:28
CompilableNodeParent
Ƭ CompilableNodeParent: CompilableASTNode
| RootASTNode
An eligible parent for a compilable AST node.
Since
0.8.0
Defined in
kipper/core/src/compiler/ast/compilable-ast-node.ts:22
ConstructableASTDeclaration
Ƭ ConstructableASTDeclaration: InstanceType
<ConstructableASTDeclarationClass
>
A union of all construable Declaration AST nodes. Uses ConstructableASTDeclarationClass to infer the type.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/factories.ts:265
ConstructableASTDeclarationClass
Ƭ ConstructableASTDeclarationClass: typeof ruleMap
[ASTDeclarationKind
]
A union of all construable Declaration AST node classes.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/factories.ts:259
ConstructableASTExpression
Ƭ ConstructableASTExpression: InstanceType
<ConstructableASTExpressionClass
>
A union of all construable Expression AST nodes. Uses ConstructableASTExpressionClass to infer the type.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/factories.ts:215
ConstructableASTExpressionClass
Ƭ ConstructableASTExpressionClass: typeof ruleMap
[ASTExpressionKind
]
A union of all construable Expression AST node classes.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/factories.ts:209
ConstructableASTKind
Ƭ ConstructableASTKind: ASTDeclarationKind
| ASTStatementKind
| ASTExpressionKind
Union type of all possible kind values that have a constructable CompilableASTNode.
This unlike ASTKind only contains the syntax kinds that have a corresponding constructable CompilableASTNode implementation and as such can be created using an ASTNodeFactory.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/ast-types.ts:180
ConstructableASTNode
Ƭ ConstructableASTNode: InstanceType
<ConstructableASTNodeClass
>
A union of all construable AST nodes. Uses ConstructableASTNodeClass to infer the type.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/factories.ts:280
ConstructableASTNodeClass
Ƭ ConstructableASTNodeClass: ConstructableASTStatementClass
| ConstructableASTExpressionClass
| ConstructableASTDeclarationClass
A union of all construable AST node classes.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/factories.ts:271
ConstructableASTStatement
Ƭ ConstructableASTStatement: InstanceType
<ConstructableASTStatementClass
>
A union of all construable Statement AST nodes. Uses ConstructableASTStatementClass to infer the type.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/factories.ts:143
ConstructableASTStatementClass
Ƭ ConstructableASTStatementClass: typeof ruleMap
[ASTStatementKind
]
A union of all construable Statement AST node classes.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/factories.ts:137
JmpStatementType
Ƭ JmpStatementType: "continue"
| "break"
Represents all possible jump statements inside Kipper.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:579
KipperAdditiveOperator
Ƭ KipperAdditiveOperator: KipperMinusOperator
| KipperPlusOperator
All available additive operations inside Kipper.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:358
KipperArg
Ƭ KipperArg: KipperParam
Represents a Kipper argument inside a custom user-defined ScopeFunctionDeclaration.
Alias
KipperParam
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:567
KipperArithmeticAssignOperator
Ƭ KipperArithmeticAssignOperator: "+="
| "-="
| "*="
| "/="
| "%="
All available arithmetic assignment operations inside Kipper.
Since
0.3.0
Defined in
kipper/core/src/compiler/const.ts:482
KipperArithmeticOperator
Ƭ KipperArithmeticOperator: KipperAdditiveOperator
| KipperMultiplicativeOperator
All available arithmetic operations inside Kipper.
Since
0.3.0
Defined in
kipper/core/src/compiler/const.ts:467
KipperAssignOperator
Ƭ KipperAssignOperator: KipperEqualAssignOperator
| KipperArithmeticAssignOperator
All available assignment operators inside Kipper, which can be used to assign a value to a variable/reference.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:506
KipperBoolType
Ƭ KipperBoolType: "bool"
Boolean type in Kipper.
Since
0.5.0
Example
bool
Defined in
kipper/core/src/compiler/const.ts:128
KipperBoolTypeLiterals
Ƭ KipperBoolTypeLiterals: "true"
| "false"
Literal names for a Kipper boolean.
Since
0.8.0
Example
var x: bool = true;
Defined in
kipper/core/src/compiler/const.ts:136
KipperComparativeOperator
Ƭ KipperComparativeOperator: KipperEqualityOperator
| KipperRelationalOperator
All available comparative operators inside Kipper, which can be used to compare two expressions against each other.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:319
KipperCompilableType
Ƭ KipperCompilableType: KipperMetaType
| KipperPrimitiveType
| KipperFuncType
| KipperListType
<any
>
All compilable and valid base types inside Kipper.
This is mainly different from the standard KipperType that it excludes KipperErrorType, which is only used for error handling/recovery and skips type checking altogether.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:197
KipperEqualAssignOperator
Ƭ KipperEqualAssignOperator: "="
Default assignment operator for assigning a value to a variable/reference.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:494
KipperEqualityOperator
Ƭ KipperEqualityOperator: "=="
| "!="
All available equality operators inside Kipper, which can be used to compare two expressions against each other.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:295
KipperErrorType
Ƭ KipperErrorType: UndefinedCustomType
All error types inside Kipper, which indicate an invalid type that can not be used for type checking.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:213
KipperFuncType
Ƭ KipperFuncType: "func"
Function type in Kipper.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:66
KipperFunction
Ƭ KipperFunction: InternalFunction
| KipperReferenceableFunction
Represents a Kipper function that can be either declared or defined.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:547
KipperIncrementOrDecrementOperator
Ƭ KipperIncrementOrDecrementOperator: "++"
| "--"
All available increment and decrement operators, which can be used to modify the value of an expression.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:400
KipperListType
Ƭ KipperListType<T
>: "list"
List type in Kipper. T represents the type of the list content and only serves as a type checking generic type, it will not change the type itself.
Since
0.5.0
Example
list<T>
Type parameters
Name | Type |
---|---|
T |
extends KipperType |
Defined in
kipper/core/src/compiler/const.ts:154
KipperLogicalAndOperator
Ƭ KipperLogicalAndOperator: "&&"
The logical-and operator, which can be used to combine multiple conditions and return true if all conditions are true.
Example
EXP && EXP;
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:251
KipperLogicalOperator
Ƭ KipperLogicalOperator: KipperLogicalAndOperator
| KipperLogicalOrOperator
All available logical operators inside Kipper, which can be used to compare or combine two expressions.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:283
KipperLogicalOrOperator
Ƭ KipperLogicalOrOperator: "||"
The logical-or operator, which can be used to combine multiple conditions and return true if at least one condition is true.
Example
EXP || EXP;
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:268
KipperMetaType
Ƭ KipperMetaType: "type"
Represents the meta type in Kipper, which itself is used represents a type e.g. this is the type of a type.
Since
0.8.0
Defined in
kipper/core/src/compiler/const.ts:29
KipperMinusOperator
Ƭ KipperMinusOperator: "-"
The minus operator.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:346
KipperMultiplicativeOperator
Ƭ KipperMultiplicativeOperator: "*"
| "**"
| "/"
| "%"
All available multiplicative operators inside Kipper.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:446
KipperNegateOperator
Ƭ KipperNegateOperator: "!"
Negate operator, which can be used to negate a boolean expression. It evaluates to the opposite boolean representation of the original expression.
Example
!true; // false
!false; // true
!1; // false
!0; // true
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:382
KipperNullType
Ƭ KipperNullType: "null"
Null type in Kipper.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:42
KipperNumType
Ƭ KipperNumType: "num"
Numeric type in Kipper.
Since
0.5.0
Example
num
Defined in
kipper/core/src/compiler/const.ts:96
KipperParam
Ƭ KipperParam: ScopeParameterDeclaration
Represents a Kipper parameter inside a custom user-defined ScopeFunctionDeclaration.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:559
KipperPlusOperator
Ƭ KipperPlusOperator: "+"
The plus operator.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:334
KipperPrimitiveType
Ƭ KipperPrimitiveType: KipperVoidType
| KipperNullType
| KipperUndefinedType
| KipperNumType
| KipperStrType
| KipperBoolType
All primitive types inside Kipper.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:169
KipperReferenceable
Ƭ KipperReferenceable: KipperReferenceableFunction
| KipperVariable
| KipperParam
| ScopeDeclaration
Represents a runtime variable or function that can be referenced.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:573
KipperReferenceableFunction
Ƭ KipperReferenceableFunction: BuiltInFunction
| ScopeFunctionDeclaration
Represents all referencable functions that a user can use inside Kipper. This does not include internal functions.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:541
KipperRelationalOperator
Ƭ KipperRelationalOperator: "<"
| ">"
| "<="
| ">="
All available relational operators inside Kipper, which can be used to compare two expressions against each other.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:307
KipperSignOperator
Ƭ KipperSignOperator: "+"
| "-"
All available sign operators inside Kipper, which can be used to modify the value of a numeric expression.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:364
KipperStorageType
Ƭ KipperStorageType: "var"
| "const"
All available storage types inside Kipper, which define how a variable is stored/can be accessed.
Defined in
kipper/core/src/compiler/const.ts:237
KipperStrType
Ƭ KipperStrType: "str"
String type in Kipper.
Since
0.5.0
Example
str
Defined in
kipper/core/src/compiler/const.ts:112
KipperType
Ƭ KipperType: KipperCompilableType
| KipperErrorType
All available variable types inside Kipper.
Defined in
kipper/core/src/compiler/const.ts:218
KipperUnaryModifierOperator
Ƭ KipperUnaryModifierOperator: KipperNegateOperator
| KipperSignOperator
Modifier Unary operators, which can be used to modify the value of an expression.
This type specifically exists for the OperatorModifiedUnaryExpression.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:414
KipperUnaryOperator
Ƭ KipperUnaryOperator: KipperUnaryModifierOperator
| KipperIncrementOrDecrementOperator
All available unary operators in Kipper, which can be used to modify the value of an expression.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:431
KipperUndefinedType
Ƭ KipperUndefinedType: "undefined"
Undefined type in Kipper.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:54
KipperVariable
Ƭ KipperVariable: BuiltInVariable
| ScopeVariableDeclaration
Represents a Kipper variable that can be either declared or defined.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:553
KipperVoidType
Ƭ KipperVoidType: "void"
Void type in Kipper.
Since
0.5.0
Example
void
Defined in
kipper/core/src/compiler/const.ts:80
MemberAccessExpressionContext
Ƭ MemberAccessExpressionContext: DotNotationMemberAccessExpressionContext
| BracketNotationMemberAccessExpressionContext
| SliceNotationMemberAccessExpressionContext
A union of all possible KipperParserRuleContext rule contexts that MemberAccessExpression implements.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/expressions.ts:1351
ParserComparativeExpressionContext
Ƭ ParserComparativeExpressionContext: EqualityExpressionContext
| RelationalExpressionContext
Union type of all possible ParserASTNode context classes for a constructable ComparativeExpression AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/expressions.ts:2158
ParserConstantExpressionContext
Ƭ ParserConstantExpressionContext: NumberPrimaryExpressionContext
| StringPrimaryExpressionContext
| BoolPrimaryExpressionContext
| VoidOrNullOrUndefinedPrimaryExpressionContext
| ArrayLiteralPrimaryExpressionContext
targetSemanticAnalysis Union type of all possible ParserASTNode context classes for a constructable ConstantExpression AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/expressions.ts:307
ParserDeclarationContext
Ƭ ParserDeclarationContext: FunctionDeclarationContext
| ParameterDeclarationContext
| VariableDeclarationContext
Union type of all usable definition/declaration rule context classes implemented by the KipperParser for a Declaration.
Defined in
kipper/core/src/compiler/ast/ast-types.ts:99
ParserExpressionContext
Ƭ ParserExpressionContext: NumberPrimaryExpressionContext
| ArrayLiteralPrimaryExpressionContext
| IdentifierPrimaryExpressionContext
| VoidOrNullOrUndefinedPrimaryExpressionContext
| BoolPrimaryExpressionContext
| StringPrimaryExpressionContext
| FStringPrimaryExpressionContext
| TangledPrimaryExpressionContext
| IncrementOrDecrementPostfixExpressionContext
| FunctionCallExpressionContext
| IncrementOrDecrementUnaryExpressionContext
| OperatorModifiedUnaryExpressionContext
| CastOrConvertExpressionContext
| MultiplicativeExpressionContext
| AdditiveExpressionContext
| RelationalExpressionContext
| EqualityExpressionContext
| LogicalAndExpressionContext
| LogicalOrExpressionContext
| ConditionalExpressionContext
| AssignmentExpressionContext
| IdentifierTypeSpecifierContext
| DotNotationMemberAccessExpressionContext
| BracketNotationMemberAccessExpressionContext
| GenericTypeSpecifierContext
| TypeofTypeSpecifierContext
Union type of all usable expression rule context classes implemented by the KipperParser for an Expression.
Defined in
kipper/core/src/compiler/ast/ast-types.ts:52
ParserIterationStatementContext
Ƭ ParserIterationStatementContext: ForLoopIterationStatementContext
| WhileLoopIterationStatementContext
| DoWhileLoopIterationStatementContext
Union type of all possible ParserASTNode context classes for a constructable MemberAccessExpression AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/statements.ts:444
ParserIterationStatementKind
Ƭ ParserIterationStatementKind: typeof RULE_forLoopIterationStatement
| typeof RULE_whileLoopIterationStatement
| typeof RULE_doWhileLoopIterationStatement
Union type of all possible kind values for a constructable MemberAccessExpression AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/statements.ts:453
ParserLogicalExpressionContext
Ƭ ParserLogicalExpressionContext: EqualityExpressionContext
| RelationalExpressionContext
Union type of all possible kind context classes for a constructable LogicalExpression AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/expressions.ts:2391
ParserStatementContext
Ƭ ParserStatementContext: CompoundStatementContext
| IfStatementContext
| SwitchStatementContext
| ExpressionStatementContext
| DoWhileLoopIterationStatementContext
| WhileLoopIterationStatementContext
| ForLoopIterationStatementContext
| JumpStatementContext
| ReturnStatementContext
Union type of all usable statement rule context classes implemented by the KipperParser for a Statement.
Defined in
kipper/core/src/compiler/ast/ast-types.ts:84
ParserTypeSpecifierExpressionContext
Ƭ ParserTypeSpecifierExpressionContext: IdentifierTypeSpecifierContext
| GenericTypeSpecifierContext
| TypeofTypeSpecifierContext
Union type of all possible ParserASTNode context classes for a constructable MemberAccessExpression AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/expressions.ts:835
ParserUnaryExpressionContext
Ƭ ParserUnaryExpressionContext: IncrementOrDecrementUnaryExpressionContext
| OperatorModifiedUnaryExpressionContext
Union type of all possible ParserASTNode context classes for a constructable UnaryExpression AST node.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/nodes/expressions.ts:1602
SemanticData
Ƭ SemanticData: Record
<string
, any
>
Semantics type which defines the blueprint for semanticData inside a CompilableASTNode.
Since
0.3.0
Defined in
kipper/core/src/compiler/ast/ast-node.ts:18
TargetASTNodeCodeGenerator
Ƭ TargetASTNodeCodeGenerator<T
, R
>: (node
: T
) => Promise
<R
>
Type parameters
Name | Type |
---|---|
T |
extends CompilableASTNode |
R |
extends TranslatedExpression | TranslatedCodeLine | TranslatedCodeLine [] |
Type declaration
▸ (node
): Promise
<R
>
Represents a function that translates a Kipper token code into a specific language.
The return may only be of type TranslatedExpression, TranslatedCodeLine or
Array
Since
0.10.0
Parameters
Name | Type |
---|---|
node |
T |
Returns
Promise
<R
>
Defined in
kipper/core/src/compiler/target-presets/translation/code-generator.ts:57
TargetASTNodeSemanticAnalyser
Ƭ TargetASTNodeSemanticAnalyser<T
>: (node
: T
) => Promise
<void
>
Type parameters
Name | Type |
---|---|
T |
extends AnalysableASTNode <SemanticData , TypeData > |
Type declaration
▸ (node
): Promise
<void
>
Represents a function that checks the semantics for a AnalysableASTNode.
This function does not interpret but only check the logical integrity of the AST node.
Since
0.10.0
Parameters
Name | Type |
---|---|
node |
T |
Returns
Promise
<void
>
Defined in
kipper/core/src/compiler/target-presets/semantic-analyser.ts:57
TargetSetUpCodeGenerator
Ƭ TargetSetUpCodeGenerator: (programCtx
: KipperProgramContext
) => Promise
<TranslatedCodeLine
[]>
Type declaration
▸ (programCtx
): Promise
<TranslatedCodeLine
[]>
Represents a function that generates setup code for a Kipper file.
This is not intended as a replacement to KipperTargetBuiltInGenerator.
Since
0.10.0
Parameters
Name | Type |
---|---|
programCtx |
KipperProgramContext |
Returns
Defined in
kipper/core/src/compiler/target-presets/translation/code-generator.ts:68
TargetWrapUpCodeGenerator
Ƭ TargetWrapUpCodeGenerator: (programCtx
: KipperProgramContext
) => Promise
<TranslatedCodeLine
[]>
Type declaration
▸ (programCtx
): Promise
<TranslatedCodeLine
[]>
Represents a function that generates wrap up code for a Kipper file.
This is not intended as a replacement to KipperTargetBuiltInGenerator.
Since
0.10.0
Parameters
Name | Type |
---|---|
programCtx |
KipperProgramContext |
Returns
Defined in
kipper/core/src/compiler/target-presets/translation/code-generator.ts:76
TranslatedCodeLine
Ƭ TranslatedCodeLine: TranslatedCodeToken
[]
Represents a single line of translated Kipper code.
Since
0.5.0
Defined in
kipper/core/src/compiler/const.ts:535
TranslatedCodeToken
Ƭ TranslatedCodeToken: string
Represents a single token of translated Kipper code. This is usually used without a TranslatedCodeLine, which represents a whole translated line of code.
Since
0.5.0
Defined in
kipper/core/src/compiler/const.ts:522
TranslatedExpression
Ƭ TranslatedExpression: TranslatedCodeToken
[]
Represents a single translated Kipper expression. This is usually used to represent multiple expression inside a single TranslatedCodeLine.
Since
0.5.0
Defined in
kipper/core/src/compiler/const.ts:529
TypeData
Ƭ TypeData: Record
<string
, any
>
Type semantics for an expression class that must be evaluated during Type Checking.
Since
0.10.0
Defined in
kipper/core/src/compiler/ast/ast-node.ts:24
Variables
ParserASTMapping
• Const
ParserASTMapping: Object
A mapping object which maps the KipperParser rules to an AST syntax kind number and in extension with the ASTNodeFactory factories to an AST node class implementation.
This mapping is required, since even if the KipperParser implements numbers for each rule, labelled rules are ignored and the parent rule index is used instead. This means that the rule index is not unique and cannot be used for identifying the AST node class for a labelled rule. As such we need a new mapping for the AST generation.
Not every number contained here is mapped to a constructable AST node. Some may be only used for internal purposes inside the parser. For completion’s sake, all numbers are listed here regardless.
Since
0.10.0
Type declaration
Name | Type |
---|---|
RULE_additiveExpression |
52 |
RULE_argumentExpressionList |
39 |
RULE_arrayLiteralPrimaryExpression |
36 |
RULE_assignmentExpression |
58 |
RULE_assignmentOperator |
59 |
RULE_blockItem |
4 |
RULE_blockItemList |
3 |
RULE_boolPrimaryExpression |
30 |
RULE_bracketNotation |
41 |
RULE_castOrConvertExpression |
50 |
RULE_compilationUnit |
0 |
RULE_compoundStatement |
16 |
RULE_computedPrimaryExpression |
38 |
RULE_conditionalExpression |
57 |
RULE_declaration |
5 |
RULE_declarator |
9 |
RULE_directDeclarator |
10 |
RULE_doWhileLoopIterationStatement |
25 |
RULE_dotNotation |
40 |
RULE_equalityExpression |
54 |
RULE_expression |
60 |
RULE_expressionStatement |
17 |
RULE_externalItem |
2 |
RULE_fStringPrimaryExpression |
34 |
RULE_forLoopIterationStatement |
23 |
RULE_functionCallExpression |
67 |
RULE_functionDeclaration |
6 |
RULE_genericTypeSpecifier |
63 |
RULE_identifier |
32 |
RULE_identifierPrimaryExpression |
31 |
RULE_identifierTypeSpecifier |
62 |
RULE_ifStatement |
19 |
RULE_incrementOrDecrementOperator |
48 |
RULE_incrementOrDecrementPostfixExpression |
44 |
RULE_incrementOrDecrementUnaryExpression |
46 |
RULE_initDeclarator |
11 |
RULE_initializer |
14 |
RULE_iterationStatement |
22 |
RULE_jumpStatement |
26 |
RULE_logicalAndExpression |
55 |
RULE_logicalOrExpression |
56 |
RULE_memberAccessExpression |
66 |
RULE_multiplicativeExpression |
51 |
RULE_numberPrimaryExpression |
35 |
RULE_operatorModifiedUnaryExpression |
47 |
RULE_parameterDeclaration |
13 |
RULE_parameterList |
12 |
RULE_postfixExpression |
43 |
RULE_primaryExpression |
28 |
RULE_relationalExpression |
53 |
RULE_returnStatement |
27 |
RULE_selectionStatement |
18 |
RULE_sliceNotation |
42 |
RULE_statement |
15 |
RULE_storageTypeSpecifier |
8 |
RULE_stringPrimaryExpression |
33 |
RULE_switchLabeledStatement |
21 |
RULE_switchStatement |
20 |
RULE_tangledPrimaryExpression |
29 |
RULE_translationUnit |
1 |
RULE_typeSpecifier |
61 |
RULE_typeSpecifierIdentifier |
65 |
RULE_typeofTypeSpecifier |
64 |
RULE_unaryExpression |
45 |
RULE_unaryOperator |
49 |
RULE_variableDeclaration |
7 |
RULE_voidOrNullOrUndefinedPrimaryExpression |
37 |
RULE_whileLoopIterationStatement |
24 |
Defined in
kipper/core/src/compiler/parser/parser-ast-mapping.ts:18
defaultOptimisationOptions
• Const
defaultOptimisationOptions: OptimisationOptions
The default configuration for OptimisationOptions.
Since
0.8.0
Defined in
kipper/core/src/compiler/optimiser/optimiser.ts:32
isBrowser
• Const
isBrowser: boolean
If this variable is true, then this environment is assumed to be inside a browser and special browser support should be applied.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:22
kipperAdditiveOperators
• Const
kipperAdditiveOperators: (KipperMinusOperator
| KipperPlusOperator
)[]
All available additive operations inside Kipper.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:458
kipperArithmeticAssignOperators
• Const
kipperArithmeticAssignOperators: KipperArithmeticAssignOperator
[]
All available arithmetic assignment operations inside Kipper.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:488
kipperArithmeticOperators
• Const
kipperArithmeticOperators: KipperArithmeticOperator
[]
All available arithmetic operations inside Kipper.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:473
kipperAssignOperators
• Const
kipperAssignOperators: KipperAssignOperator
[]
All available assignment operators inside Kipper, which can be used to assign a value to a variable/reference.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:512
kipperBoolType
• Const
kipperBoolType: KipperBoolType
= "bool"
Boolean type in Kipper.
Since
0.5.0
Example
bool
Defined in
kipper/core/src/compiler/const.ts:144
kipperComparativeOperators
• Const
kipperComparativeOperators: KipperComparativeOperator
[]
All available comparative operators inside Kipper, which can be used to compare two expressions against each other.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:325
kipperCompilableTypes
• Const
kipperCompilableTypes: KipperCompilableType
[]
All compilable and valid base types inside Kipper.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:203
kipperEqualAssignOperator
• Const
kipperEqualAssignOperator: KipperEqualAssignOperator
= "="
Default assignment operator for assigning a value to a variable/reference.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:500
kipperEqualityOperators
• Const
kipperEqualityOperators: KipperEqualityOperator
[]
All available equality operators inside Kipper, which can be used to compare two expressions against each other.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:301
kipperFuncType
• Const
kipperFuncType: KipperFuncType
= "func"
Function type in Kipper.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:72
kipperIncrementOrDecrementOperators
• Const
kipperIncrementOrDecrementOperators: KipperIncrementOrDecrementOperator
[]
Increment and decrement operators, which can be used to modify the value of an expression.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:406
kipperInternalBuiltInFunctions
• Const
kipperInternalBuiltInFunctions: Record
<string
, InternalFunction
>
Contains all the internal built-in functions, which are used by Kipper to provide internal functionality. These internal built-ins are commonly used to provide the functionality for keywords and other internal logic.
This contains every builtin that also must be implemented by every target in the KipperTargetBuiltInGenerator.
Since
0.8.0
Defined in
kipper/core/src/compiler/runtime-built-ins.ts:184
kipperListType
• Const
kipperListType: KipperListType
<any
> = "list"
List type in Kipper. ValueType represents the type of the list content and only serves as a type checking generic type, it will not change the type itself.
Since
0.5.0
Example
list<T>
Defined in
kipper/core/src/compiler/const.ts:163
kipperLogicalAndOperator
• Const
kipperLogicalAndOperator: KipperLogicalAndOperator
= "&&"
The logical-and operator, which can be used to combine multiple conditions and return true if all conditions are true.
Example
EXP && EXP;
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:259
kipperLogicalOperator
• Const
kipperLogicalOperator: KipperLogicalOperator
[]
All available logical operators inside Kipper, which can be used to compare two expressions against each other.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:289
kipperLogicalOrOperator
• Const
kipperLogicalOrOperator: KipperLogicalOrOperator
= "||"
The logical-or operator, which can be used to combine multiple conditions and return true if at least one condition is true.
Example
EXP || EXP;
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:277
kipperMetaType
• Const
kipperMetaType: KipperMetaType
= "type"
Represents the meta type in Kipper, which itself is used represents a type e.g. this is the type of a type.
Since
0.8.0
Defined in
kipper/core/src/compiler/const.ts:36
kipperMinusOperator
• Const
kipperMinusOperator: KipperMinusOperator
= "-"
The minus operator.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:352
kipperMultiplicativeOperators
• Const
kipperMultiplicativeOperators: KipperMultiplicativeOperator
[]
All available multiplicative operators inside Kipper.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:452
kipperNegateOperator
• Const
kipperNegateOperator: KipperNegateOperator
= "!"
Negate operator, which can be used to negate a boolean expression. It evaluates to the opposite boolean representation of the original expression.
Example
!true; // false
!false; // true
!1; // false
!0; // true
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:394
kipperNullType
• Const
kipperNullType: KipperNullType
= "null"
Null type in Kipper.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:48
kipperNumType
• Const
kipperNumType: KipperNumType
= "num"
Numeric type in Kipper.
Since
0.5.0
Example
num
Defined in
kipper/core/src/compiler/const.ts:104
kipperPlusOperator
• Const
kipperPlusOperator: KipperPlusOperator
= "+"
The plus operator.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:340
kipperPrimitiveTypes
• Const
kipperPrimitiveTypes: KipperPrimitiveType
[]
All primitive types inside Kipper.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:181
kipperRelationalOperators
• Const
kipperRelationalOperators: KipperRelationalOperator
[]
All available relational operators inside Kipper, which can be used to compare two expressions against each other.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:313
kipperRuntimeBuiltInFunctions
• Const
kipperRuntimeBuiltInFunctions: Record
<string
, BuiltInFunction
>
Contains all the built-in functions in Kipper that are available per default in every program.
This contains every builtin that also must be implemented by every target in the KipperTargetBuiltInGenerator.
Since
0.7.0
Defined in
kipper/core/src/compiler/runtime-built-ins.ts:154
kipperRuntimeBuiltInVariables
• Const
kipperRuntimeBuiltInVariables: Record
<string
, BuiltInVariable
>
Contains all the built-in variables in Kipper that are available per default in every program.
Since
0.10.0
Defined in
kipper/core/src/compiler/runtime-built-ins.ts:263
kipperSignOperators
• Const
kipperSignOperators: KipperSignOperator
[]
All available sign operators inside Kipper, which can be used to modify the value of a numeric expression.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:370
kipperStorageTypes
• Const
kipperStorageTypes: KipperStorageType
[]
All available storage types inside Kipper, which define how a variable is stored/can be accessed.
Since
0.6.0
Defined in
kipper/core/src/compiler/const.ts:243
kipperStrType
• Const
kipperStrType: KipperStrType
= "str"
String type in Kipper.
Since
0.5.0
Example
str
Defined in
kipper/core/src/compiler/const.ts:120
kipperSupportedConversions
• Const
kipperSupportedConversions: [KipperType
, KipperType
][]
List of all supported variable type conversions that can be performed in a Kipper program.
For each translation, there will have to be a corresponding generator function, which generates for each conversion the translator function in the specific target.
Since
0.8.0
Defined in
kipper/core/src/compiler/const.ts:227
kipperUnaryModifierOperators
• Const
kipperUnaryModifierOperators: KipperUnaryModifierOperator
[]
Modifier Unary operators, which are used to modify the value of an expression.
This type specifically exists for the OperatorModifiedUnaryExpression.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:422
kipperUnaryOperators
• Const
kipperUnaryOperators: KipperUnaryOperator
[]
All available unary operators in Kipper, which can be used to modify the value of an expression.
Since
0.9.0
Defined in
kipper/core/src/compiler/const.ts:437
kipperUndefinedType
• Const
kipperUndefinedType: KipperUndefinedType
= "undefined"
Undefined type in Kipper.
Since
0.10.0
Defined in
kipper/core/src/compiler/const.ts:60
kipperVoidType
• Const
kipperVoidType: KipperVoidType
= "void"
Void type in Kipper.
Since
0.5.0
Example
void
Defined in
kipper/core/src/compiler/const.ts:88
Functions
handleSemanticError
▸ handleSemanticError(node
, error
): void
Handles the specified error that occurred during the semantic analysis of a node in a standardised way.
Since
0.10.0
Parameters
Name | Type | Description |
---|---|---|
node |
RootASTNode | AnalysableASTNode <SemanticData , TypeData > |
The node that is currently being processed. |
error |
KipperError | Error |
The error to handle. |
Returns
void
Defined in
kipper/core/src/compiler/analysis/handle-error.ts:25
shouldRecoverFromError
▸ shouldRecoverFromError(node
, error
): boolean
Checks whether the given error should be recovered from or not.
Since
0.10.0
Parameters
Name | Type | Description |
---|---|---|
node |
RootASTNode | AnalysableASTNode <SemanticData , TypeData > |
The node that is currently being processed. |
error |
KipperError | Error |
The error to check. |
Returns
boolean
Defined in
kipper/core/src/compiler/analysis/handle-error.ts:14