Beamable.Trino.Sql
1.0.1
dotnet add package Beamable.Trino.Sql --version 1.0.1
NuGet\Install-Package Beamable.Trino.Sql -Version 1.0.1
<PackageReference Include="Beamable.Trino.Sql" Version="1.0.1" />
<PackageVersion Include="Beamable.Trino.Sql" Version="1.0.1" />
<PackageReference Include="Beamable.Trino.Sql" />
paket add Beamable.Trino.Sql --version 1.0.1
#r "nuget: Beamable.Trino.Sql, 1.0.1"
#:package Beamable.Trino.Sql@1.0.1
#addin nuget:?package=Beamable.Trino.Sql&version=1.0.1
#tool nuget:?package=Beamable.Trino.Sql&version=1.0.1
BeamableTrinoSqlParser
A standalone generator for a C# Trino/Athena SQL parser. It vendors the Trino ANTLR4 grammar, generates a C# lexer/parser from it, and builds a single DLL.
Build
pwsh ./build.ps1
build.ps1 is self-bootstrapping: if a Java 11+ runtime isn't on PATH (ANTLR 4.13 needs
it), it downloads a portable Temurin 17 JRE into .tools/; it also downloads the pinned ANTLR
jar there.
What it exposes
Grammar only, no policy. Beamable.Trino.Sql.TrinoSql.Parse(sql) returns the ANTLR parse
tree (TrinoParser.ParseContext) and throws TrinoSqlSyntaxException on any lexer/parser
error (fail-closed). Callers walk the tree (e.g. via the generated TrinoParserBaseListener)
to apply their own rules.
Grammar provenance & updates
The grammar is pinned in grammar/VERSION (a community Trino grammar from antlr/grammars-v4,
Apache-2.0). It is not auto-synced with Athena's engine. Because the consumer is
fail-closed, grammar drift can only cause a false rejection of newer syntax, never a security
gap. To track newer syntax: re-fetch the two .g4 files, bump VERSION, re-run build.ps1.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Antlr4.Runtime.Standard (>= 4.13.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.