Skip to main content

Module document_source

Module document_source 

Source
Expand description

Document source port — read files from the local file system Document source port — read local files as pipeline data sources.

Defines the DocumentSourcePort trait for reading documents (CSV, JSON, Markdown, plain text, etc.) from the local file system and returning their content for downstream processing.

§Architecture

stygian-graph
  ├─ DocumentSourcePort (this file)      ← always compiled
  └─ Adapters (adapters/)
       └─ DocumentSource                 → std::fs / tokio::fs

§Example

use stygian_graph::ports::document_source::{DocumentSourcePort, DocumentQuery};
use std::path::PathBuf;

async fn read_docs<D: DocumentSourcePort>(source: &D) {
    let query = DocumentQuery {
        path: PathBuf::from("data/input.csv"),
        recursive: false,
        glob_pattern: None,
    };
    let docs = source.read_documents(query).await.unwrap();
    for doc in &docs {
        println!("{}: {} bytes", doc.path.display(), doc.content.len());
    }
}

Structs§

Document
A document read from the file system.
DocumentQuery
Query parameters for reading documents from the file system.

Traits§

DocumentSourcePort
Port: read documents from the local file system.