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.4.0"),
    ],
    targets: [
        .target(name: "example",
            dependencies: [
                .product(name: "Grammar", package: "swift-grammar"),
                // other dependencies
            ]),
        // other targets
    ]
)The swift-grammar library requires Swift 5.8 or later.
| Platform | Status | 
|---|---|
| 🐧 Linux | |
| 🍏 Darwin | |
| 🍏 Darwin (iOS) | |
| 🍏 Darwin (tvOS) | |
| 🍏 Darwin (visionOS) | |
| 🍏 Darwin (watchOS) |