Skip to main content

Crate uls_query

Crate uls_query 

Source
Expand description

Query engine for FCC ULS data lookups.

This crate provides a high-level API for querying ULS license data. It wraps the database operations and provides convenient search and lookup methods with filtering and formatting support.

§Example

use uls_query::{QueryEngine, SearchFilter};

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let engine = QueryEngine::open("~/.uls/uls.db")?;
     
    // Quick callsign lookup
    if let Some(license) = engine.lookup("W1AW")? {
        println!("{} - {}", license.call_sign, license.display_name());
    }
     
    // Search by name
    let results = engine.search(SearchFilter::name("SMITH"))?;
    for license in results {
        println!("{}", license.call_sign);
    }
     
    Ok(())
}

Structs§

FieldDef
Field definition with SQL column mapping.
FieldRegistry
Registry of all searchable/sortable fields.
FilterExpr
A single filter expression: field op value.
License
A complete license with all related information.
LicenseStats
Database statistics.
QueryEngine
Query engine for ULS data.
SearchFilter
Filter criteria for license searches.

Enums§

FieldType
Field data types that determine allowed filter operations.
FilterOp
Comparison operators for filters.
OutputFormat
Supported output formats.
QueryError
Errors from query operations.
SortOrder
Sort order for search results.

Traits§

FormatOutput
Trait for formatting output.