Ferricstore.Flow.Query.ReferenceParser (ferricstore v0.10.1)

Copy Markdown View Source

Pure Elixir oracle for the bounded FQL1 parser.

Production native-protocol traffic uses the Rust parser. This implementation intentionally stays independent so differential tests can detect parser or canonicalization drift.

Summary

Types

parse_error()

@type parse_error() ::
  :invalid_syntax
  | :query_too_large
  | :unsupported_field
  | :unsupported_query_shape
  | :unsupported_source

Functions

parse(query)

@spec parse(binary()) ::
  {:ok, Ferricstore.Flow.Query.Request.t()} | {:error, parse_error()}