tycode_core/file/
config.rs1use crate::settings::config::FileModificationApi;
2use schemars::JsonSchema;
3use serde::{Deserialize, Serialize};
4
5fn is_default_file_modification_api(api: &FileModificationApi) -> bool {
6 api == &FileModificationApi::Default
7}
8
9fn default_auto_context_bytes() -> usize {
10 80_000
11}
12
13#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
15pub struct File {
16 #[serde(default, skip_serializing_if = "is_default_file_modification_api")]
19 pub file_modification_api: FileModificationApi,
20
21 #[serde(default = "default_auto_context_bytes")]
26 pub auto_context_bytes: usize,
27}
28
29impl File {
30 pub const NAMESPACE: &str = "file";
31}
32
33impl Default for File {
34 fn default() -> Self {
35 Self {
36 file_modification_api: FileModificationApi::Default,
37 auto_context_bytes: default_auto_context_bytes(),
38 }
39 }
40}