High-performance constructive parsing, in pure Swift. This module powers the swift-json library!
Importing this module will expose the following top-level symbols:
-
enum Pattern -
enum UnicodeDigit -
enum UnicodeEncoding -
protocol TraceableError -
protocol TraceableErrorRoot -
struct ParsingError<Index> -
struct ParsingInput<Diagnostics> -
struct NoDiagnostics<Source> -
struct DefaultDiagnostics<Source> -
protocol ParsingDiagnostics -
protocol ParsingRule -
protocol TerminalRule -
protocol LiteralRule -
protocol DigitRule -
protocol ASCIITerminal -
protocol UTF8Terminal -
protocol UTF16Terminal -
protocol UnicodeTerminal -
protocol CharacterTerminal
To use swift-grammar in a project, add the following to your Package.swift file:
let package = Package(
...
dependencies:
[
// other dependencies
.package(url: "https://github.com/tayloraswift/swift-grammar", from: "0.3.3"),
],
targets:
[
.target(name: "example",
dependencies:
[
.product(name: "Grammar", package: "swift-grammar"),
// other dependencies
]),
// other targets
]
)swift-grammar requires Swift 5.8 or newer.