1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// Copyright 2025 lituus-io <spicyzhug@gmail.com>
// All Rights Reserved.
// Licensed under PolyForm Noncommercial 1.0.0
//! Declarative Pipeline API
//!
//! This module provides the same API as the recursive module with additional
//! Jinja template support. In the simplified API, declarative is a thin
//! re-export of recursive.
//!
//! # Example
//!
//! ```rust,ignore
//! use kkachi::declarative::*;
//!
//! let llm = MockLlm::new(|prompt, _| "fn add(a: i32, b: i32) -> i32 { a + b }".to_string());
//!
//! // Define your own validator
//! let validator = cli("rustfmt").arg("--check")
//! .then("rustc").args(&["--emit=metadata"]).required()
//! .ext("rs");
//!
//! let result = refine(&llm, "question -> code")
//! .validate(validator)
//! .max_iter(5)
//! .go()?;
//! ```
// Jinja template support
pub use ;
// Re-export minijinja::Value for template rendering
pub use Value as JinjaValue;
// Re-export everything from recursive prelude
pub use crate*;
// Re-export StrView for compatibility
pub use crateStrView;