Common/Configuration/DTO/
ConfigurationOverridesDTO.rs

1//! # ConfigurationOverridesDTO
2//!
3//! Defines the Data Transfer Object for specifying configuration overrides
4//! when retrieving or inspecting values.
5
6use serde::{Deserialize, Serialize};
7use serde_json::Value;
8
9/// A serializable struct for specifying overrides when retrieving or inspecting
10/// configuration values.
11///
12/// This allows for fetching settings that are specific to a particular resource
13/// (like a file URI) or a language (like settings inside a `[rust]` block).
14#[derive(Serialize, Deserialize, Debug, Clone, Default)]
15#[serde(rename_all = "PascalCase")]
16pub struct ConfigurationOverridesDTO {
17	/// The resource URI to which the configuration should be scoped.
18	/// This is used to resolve resource-specific and folder-specific settings.
19	/// The value is a serialized `UriComponents` DTO.
20	#[serde(skip_serializing_if = "Option::is_none")]
21	pub Resource:Option<Value>,
22
23	/// The language identifier for language-specific overrides.
24	/// This is used to resolve `[language]` blocks in `settings.json`.
25	#[serde(skip_serializing_if = "Option::is_none")]
26	pub OverrideIdentifier:Option<String>,
27}