aspl: add (inline) `if` expressions/a ternary operator
#38 aberto em 16 de jul. de 2026
Métricas do repositório
- Stars
- (30 estrelas)
- Métricas de merge de PR
- (Métricas PR pendentes)
Description
Feature idea
There is currently no clean way to conditionally assign/select values inside a single expression in ASPL, leading to a lot of boilerplate code like temporary or wrongly-typed variables. See this code, which is taken from the ASPL compiler, for an example:
var string? mainOutFile = null
// ...
if(Options:targetOs == "android"){
mainOutFile = tempFile
}else{
// ...
mainOutFile = exeFile
}
Possible solutions/implementations
An if expression, analogous to if statements, or a ternary operator, which is just a different notation for the same thing.
Alternatives considered
Match expressions (see #37) are the more general solution to this problem but also unnecessary clutter for just a simple binary condition, so additional if expressions are still worth it, imo.
Additional context
No response
Contributing guidelines
- I agree to follow this project's contributing guidelines