Files
codebase-memory-mcp/internal/lang/fsharp.go
T
Martin Vogel 59d40d4035 v0.5: CBM tree-sitter engine, 59 vendored language grammars
- Replace Go-binding tree-sitter with vendored C grammars compiled via
  CGo (internal/cbm/); eliminates all Go module/linker fragility
- Add 32 new languages: Clojure, CMake, COBOL, Common Lisp, CUDA, Elm,
  Emacs Lisp, Fortran, F#, GLSL, GraphQL, INI, JSON, Julia, Makefile,
  Markdown, Meson, Nix, Protobuf, Svelte, Verilog, Vim Script, Vue, XML
  (plus C, C#, Erlang, SQL, YAML quality improvements)
- Adaptive worker concurrency and mmap prefetch for faster indexing
- Graph buffer: batched SQLite writes for 3-5x throughput improvement
- Fix cancellation test: use 50ms timeout (pipeline now indexes 212-file
  Erlang repo in ~400ms, well under the old 2s deadline)
- Fix isTestFunction: add "Test" prefix for C#, "test" prefix for Scala
2026-03-05 22:39:01 +01:00

21 lines
787 B
Go

package lang
func init() {
Register(&LanguageSpec{
Language: FSharp,
FileExtensions: []string{".fs", ".fsi", ".fsx"},
FunctionNodeTypes: []string{"function_declaration", "value_declaration"},
ClassNodeTypes: []string{"type_definition", "exception_definition"},
ModuleNodeTypes: []string{"file"},
CallNodeTypes: []string{"application_expression", "dot_expression"},
ImportNodeTypes: []string{"import_decl", "open_expression"},
BranchingNodeTypes: []string{
"if_expression", "for_expression", "while_expression",
"match_expression", "elif_expression",
},
VariableNodeTypes: []string{"value_declaration"},
AssignmentNodeTypes: []string{"value_declaration"},
EnvAccessFunctions: []string{"Environment.GetEnvironmentVariable"},
})
}