summaryrefslogtreecommitdiff
path: root/libpanto/src/root.zig
blob: bfc814b4ccd9855ccc99f8e02eb7e15f9235dc29 (plain)
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
pub const conversation = @import("conversation.zig");
pub const provider = @import("provider.zig");
pub const agent = @import("agent.zig");
pub const config = @import("config.zig");
pub const sse = @import("sse.zig");
pub const tool = @import("tool.zig");
pub const tool_registry = @import("tool_registry.zig");

// Re-exports for ergonomic embedder use.
pub const Tool = tool.Tool;
pub const ToolRegistry = tool_registry.ToolRegistry;

// Internal modules. Not part of the public API — callers construct providers
// via `provider.Provider.init(allocator, io, config)`, which picks the right
// concrete implementation based on the config's API style. These are exposed
// here only so `refAllDecls` picks up their tests.
const openai_chat_json = @import("openai_chat_json.zig");
const provider_openai_chat = @import("provider_openai_chat.zig");
const anthropic_messages_json = @import("anthropic_messages_json.zig");
const provider_anthropic_messages = @import("provider_anthropic_messages.zig");

test {
    const std = @import("std");
    std.testing.refAllDecls(@This());
    std.testing.refAllDecls(openai_chat_json);
    std.testing.refAllDecls(provider_openai_chat);
    std.testing.refAllDecls(anthropic_messages_json);
    std.testing.refAllDecls(provider_anthropic_messages);
}