aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/azalea
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-09-05 05:44:33 +0900
committerOphestra <cat@gensokyo.uk>2026-09-05 06:25:41 +0900
commit5a32f8f9b2f2540495e79cb39ce4a6861553fe79 (patch)
tree47b25144af5edead669b615f3abcc51aedd81096 /internal/rosa/azalea
parent871c701fdbce4a3d43e6e8edc436a2ae93322540 (diff)
internal/rosa: separate native tools from libraries
This removes most redundant runtime arguments and is useful for cross-compilation. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/rosa/azalea')
-rw-r--r--internal/rosa/azalea/evaluate.go10
1 files changed, 7 insertions, 3 deletions
diff --git a/internal/rosa/azalea/evaluate.go b/internal/rosa/azalea/evaluate.go
index 26a02c02..cb5e8d12 100644
--- a/internal/rosa/azalea/evaluate.go
+++ b/internal/rosa/azalea/evaluate.go
@@ -200,12 +200,15 @@ func (e EvaluationError) Error() string {
}
var (
- // IdentInputs is a special array argument in a package declaration whose
+
+ // IdentTools is a special array argument in a package declaration whose
// values of [Ident] are kept as is when passed to a [PF].
+ IdentTools = unique.Make(Ident("tools"))
+ // IdentInputs has the same semantics as [IdentTools].
IdentInputs = unique.Make(Ident("inputs"))
- // IdentRuntime has the same semantics as [IdentInputs].
+ // IdentRuntime has the same semantics as [IdentTools].
IdentRuntime = unique.Make(Ident("runtime"))
- // IdentExtra has the same semantics as [IdentInputs].
+ // IdentExtra has the same semantics as [IdentTools].
IdentExtra = unique.Make(Ident("extra"))
// IdentSource is a special argument in a package declaration where an
// assignment of a [Val] with a single [Ident] passes through the evaluator.
@@ -356,6 +359,7 @@ func evaluateAny(d PF, s []Frame, expr, rp any) bool {
farg := FArg{R: arg.R}
if e.Package {
for _, special := range [...]unique.Handle[Ident]{
+ IdentTools,
IdentInputs,
IdentRuntime,
IdentExtra,