MARS documentation
Rust librariesmars-protocol

mars-protocol · marsql

Public declarations and documentation for mars-protocol::marsql.

Package: mars-protocol · Workspace version: 0.1.0 · Module: marsql

This reference follows declared modules and public syntax, including public implementation methods. Function bodies and constant values are omitted. Feature conditions are retained. Private-module re-exports and trait resolution require the compiler; not every declaration is a root import.

marsql::ast

MARS-QL — the query language for the MARS registry.

This module provides a complete MARS-QL implementation:

  • [ast] — Abstract Syntax Tree types for parsed queries.
  • [parser] — Recursive-descent parser (parse(input) -> MarsQuery).
  • [evaluator] — Evaluate conditions against MarsEntry instances.

Quick Start

use mars_protocol::marsql::{parse, MarsQuery, MarsQueryResult};
use mars_protocol::marsql::evaluator::matches_query;

let query = parse(r#"DISCOVER AgentDefinition WHERE tags CONTAINS "ml" LIMIT 10"#)
    .expect("valid MARS-QL");
assert_eq!(query.limit, Some(10));
pub mod ast;

Source line: 20.

marsql::evaluator

pub mod evaluator;

Source line: 21.

marsql::parser

pub mod parser;

Source line: 22.

pub use ast::MarsQuery;

pub use ast::MarsQuery;

Source line: 25.

pub use evaluator::MarsQueryResult;

pub use evaluator::MarsQueryResult;

Source line: 26.

pub use parser::parse;

pub use parser::parse;

Source line: 27.

pub use ast::{ShardHint, ShardedQuery};

#[cfg(feature = "sharding")]
pub use ast::{ShardHint, ShardedQuery};

Source line: 30.

pub use parser::parse_sharded;

#[cfg(feature = "sharding")]
pub use parser::parse_sharded;

Source line: 32.

Source provenance

Source: mars-protocol/src/marsql/mod.rs · SHA-256 9513fa32e8d504c2587483fcf07328b68e072fbf8c1b0ba6c63836f1969df748. Package overview.

On this page