Skip to main content

detect_namespace

Function detect_namespace 

Source
pub fn detect_namespace(
    explicit: Option<&str>,
) -> Result<NamespaceResolution, AppError>
Expand description

Resolve o namespace ativo retornando estrutura com origem e diretório atual.

A precedência é: flag explícita > SQLITE_GRAPHRAG_NAMESPACE > fallback "global".

§Errors

Retorna AppError::Validation se o namespace resolvido contiver caracteres inválidos.

§Examples

use sqlite_graphrag::namespace::{detect_namespace, NamespaceSource};

// Com flag explícita, a fonte é `ExplicitFlag`.
let res = detect_namespace(Some("producao")).unwrap();
assert_eq!(res.namespace, "producao");
assert_eq!(res.source, NamespaceSource::ExplicitFlag);
use sqlite_graphrag::namespace::{detect_namespace, NamespaceSource};

// Sem nenhuma configuração explícita, fallback é "global".
// Desativa env var para garantir comportamento determinístico.
std::env::remove_var("SQLITE_GRAPHRAG_NAMESPACE");
let res = detect_namespace(None).unwrap();
assert_eq!(res.namespace, "global");
assert_eq!(res.source, NamespaceSource::Default);