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.