Skip to main content

vtcode_config/models/
openrouter.rs

1pub use super::ModelId;
2
3#[derive(Clone, Copy)]
4pub struct OpenRouterMetadata {
5    pub(crate) id: &'static str,
6    pub(crate) vendor: &'static str,
7    pub(crate) display: &'static str,
8    pub(crate) description: &'static str,
9    pub(crate) efficient: bool,
10    pub(crate) top_tier: bool,
11    pub(crate) generation: &'static str,
12    pub(crate) reasoning: bool,
13    pub(crate) tool_call: bool,
14}
15
16#[cfg(not(docsrs))]
17pub mod openrouter_generated {
18    include!(concat!(env!("OUT_DIR"), "/openrouter_metadata.rs"));
19}
20
21#[cfg(docsrs)]
22pub mod openrouter_generated {
23    #[derive(Clone, Copy)]
24    pub struct Entry {
25        pub variant: super::super::ModelId,
26        pub id: &'static str,
27        pub vendor: &'static str,
28        pub display: &'static str,
29        pub description: &'static str,
30        pub efficient: bool,
31        pub top_tier: bool,
32        pub generation: &'static str,
33        pub reasoning: bool,
34        pub tool_call: bool,
35    }
36
37    pub const ENTRIES: &[Entry] = &[];
38
39    #[derive(Clone, Copy)]
40    pub struct VendorModels {
41        pub vendor: &'static str,
42        pub models: &'static [super::super::ModelId],
43    }
44
45    pub const VENDOR_MODELS: &[VendorModels] = &[];
46
47    pub fn metadata_for(_model: super::super::ModelId) -> Option<super::OpenRouterMetadata> {
48        None
49    }
50
51    pub fn parse_model(_value: &str) -> Option<super::super::ModelId> {
52        None
53    }
54
55    pub fn vendor_groups() -> &'static [VendorModels] {
56        VENDOR_MODELS
57    }
58}