• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

forst-lang / forst / 30222813533
79%

Build:
DEFAULT BRANCH: main
Ran 26 Jul 2026 10:42PM UTC
Jobs 1
Files 433
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

26 Jul 2026 10:15PM UTC coverage: 75.333% (-0.4%) from 75.716%
30222813533

push

github

haveyaseen
feat(compiler): add function literals, closures, and func types

Function literals are valid in expression position with optional return
types, closure over enclosing scope, and immediate invocation. Function
types use func(T): U syntax for parameters and callbacks. Calls on
expression callees (IIFE and stored closures) go through
FunctionCallNode.Callee; go and defer accept anonymous func literals.

Adds parser, typechecker, transformer, and hasher support, a closures
example with golden output, task example:closures, and ROADMAP updates.

188 of 401 new or added lines in 17 files covered. (46.88%)

1468 existing lines in 43 files now uncovered.

37264 of 49466 relevant lines covered (75.33%)

1074.87 hits per line

Uncovered Changes

Lines Coverage ∆ File
57
50.86
forst/internal/typechecker/infer_funclit.go
40
54.12
-6.01% forst/internal/hasher/hasher.go
39
25.13
-6.28% forst/internal/hasher/scope_key.go
35
0.0
forst/internal/ast/funclit.go
12
73.33
forst/internal/transformer/go/funclit.go
6
91.26
-7.33% forst/internal/ast/type.go
6
91.67
-1.14% forst/internal/parser/expression.go
6
64.85
1.47% forst/internal/typechecker/infer_expression.go
4
73.41
0.11% forst/internal/transformer/go/expression.go
4
71.72
2.73% forst/internal/transformer/go/statement.go
2
37.21
-3.58% forst/internal/ast/expression.go
2
71.58
1.7% forst/internal/parser/type.go

Coverage Regressions

Lines Coverage ∆ File
280
54.12
-6.01% forst/internal/hasher/hasher.go
133
64.85
1.47% forst/internal/typechecker/infer_expression.go
99
69.03
0.25% forst/cmd/forst/lsp/server.go
93
70.38
0.7% forst/internal/typechecker/go_builtins.go
73
76.02
-0.09% forst/internal/transformer/go/transformer.go
57
73.41
0.11% forst/internal/transformer/go/expression.go
52
74.68
0.43% forst/internal/transformer/go/expression_shape_literal.go
47
72.03
-1.42% forst/internal/typechecker/collect.go
46
68.42
2.27% forst/internal/transformer/go/type.go
44
70.94
0.25% forst/internal/typechecker/go_builtins_dispatch.go
44
61.92
1.19% forst/internal/typechecker/infer_assignment.go
40
71.72
2.73% forst/internal/transformer/go/statement.go
35
78.28
0.4% forst/internal/transformer/go/function.go
34
69.13
-0.94% forst/internal/typechecker/types.go
30
89.84
0.44% forst/internal/parser/shape.go
30
33.33
11.81% forst/internal/typechecker/gointerop/mapping.go
26
73.3
2.78% forst/internal/typechecker/infer_function.go
24
37.21
-3.58% forst/internal/ast/expression.go
24
71.58
1.7% forst/internal/parser/type.go
22
69.33
2.19% forst/internal/typechecker/unify_operators.go
21
91.26
-7.33% forst/internal/ast/type.go
20
75.93
-0.08% forst/cmd/forst/lsp/error_position.go
20
83.87
0.4% forst/internal/typechecker/typechecker.go
19
84.09
-1.35% forst/internal/typechecker/infer.go
19
78.48
-0.56% forst/internal/typechecker/lookup_field_path.go
18
49.53
49.53% forst/internal/typechecker/gointerop/fields.go
18
33.33
-28.57% forst/internal/typechecker/shape_field_type.go
16
90.28
0.52% forst/internal/parser/function.go
13
74.51
-25.49% forst/internal/ast/tokens.go
10
94.48
-4.37% forst/internal/astwalk/walk.go
8
89.61
-10.39% forst/internal/printer/ops.go
8
76.27
1.73% forst/internal/typechecker/compat_memo.go
8
87.79
-1.01% forst/internal/typechecker/utils.go
7
36.89
-2.69% forst/internal/typechecker/scope_rebind.go
6
91.67
-1.14% forst/internal/parser/expression.go
6
72.96
-0.07% forst/internal/parser/statement.go
5
85.37
0.18% forst/internal/typechecker/inferred_storage.go
4
80.3
-1.66% forst/internal/typechecker/builtin_type_helpers.go
2
92.31
-7.69% forst/internal/ast/param.go
2
92.86
-7.14% forst/internal/lexer/classify.go
2
98.56
-1.44% forst/internal/lexer/process.go
2
83.07
0.46% forst/internal/typechecker/register.go
1
49.83
0.09% forst/internal/transformer/go/shape.go
Subprojects
ID Flag name Job ID Ran Files Coverage
1 /jobs/185180960 30222813533.1 26 Jul 2026 10:42PM UTC 433
75.33
GitHub Action Run
Source Files on build 30222813533
  • Tree
  • List 433
  • Changed 55
  • Source Changed 0
  • Coverage Changed 55
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • b7773290 on github
  • Prev Build on main (#30218381422)
  • Next Build on main (#30296648162)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc