Skip to content

Commit 8fb71a3

Browse files
committed
Remove automatic lowercase
1 parent 51ae442 commit 8fb71a3

File tree

10 files changed

+21
-23
lines changed

10 files changed

+21
-23
lines changed

src/config.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ impl Config {
125125
ConfigKind::Mutable {
126126
ref mut defaults, ..
127127
} => {
128-
defaults.insert(key.to_lowercase().parse()?, value.into());
128+
defaults.insert(key.parse()?, value.into());
129129
}
130130

131131
ConfigKind::Frozen => return Err(ConfigError::Frozen),
@@ -142,7 +142,7 @@ impl Config {
142142
ConfigKind::Mutable {
143143
ref mut overrides, ..
144144
} => {
145-
overrides.insert(key.to_lowercase().parse()?, value.into());
145+
overrides.insert(key.parse()?, value.into());
146146
}
147147

148148
ConfigKind::Frozen => return Err(ConfigError::Frozen),
@@ -153,7 +153,7 @@ impl Config {
153153

154154
pub fn get<'de, T: Deserialize<'de>>(&self, key: &str) -> Result<T> {
155155
// Parse the key into a path expression
156-
let expr: path::Expression = key.to_lowercase().parse()?;
156+
let expr: path::Expression = key.parse()?;
157157

158158
// Traverse the cache using the path to (possibly) retrieve a value
159159
let value = expr.get(&self.cache).cloned();

src/de.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,7 @@ impl EnumAccess {
244244
fn variant_deserializer(&self, name: &String) -> Result<StrDeserializer> {
245245
self.variants
246246
.iter()
247-
.find(|&s| s.to_lowercase() == name.to_lowercase())
247+
.find(|&s| s == name)
248248
.map(|&s| StrDeserializer(s))
249249
.ok_or(self.no_constructor_error(name))
250250
}

src/file/format/hjson.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ fn from_hjson_value(uri: Option<&String>, value: &serde_hjson::Value) -> Value {
3434
let mut m = HashMap::new();
3535

3636
for (key, value) in table {
37-
m.insert(key.to_lowercase().clone(), from_hjson_value(uri, value));
37+
m.insert(key.clone(), from_hjson_value(uri, value));
3838
}
3939

4040
Value::new(uri, ValueKind::Table(m))

src/file/format/ini.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,19 +16,19 @@ pub fn parse(
1616
let mut sec_map: HashMap<String, Value> = HashMap::new();
1717
for (k, v) in prop.iter() {
1818
sec_map.insert(
19-
k.to_lowercase().clone(),
19+
k.clone(),
2020
Value::new(uri, ValueKind::String(v.clone())),
2121
);
2222
}
2323
map.insert(
24-
sec.to_lowercase().clone(),
24+
sec.clone(),
2525
Value::new(uri, ValueKind::Table(sec_map)),
2626
);
2727
}
2828
None => {
2929
for (k, v) in prop.iter() {
3030
map.insert(
31-
k.to_lowercase().clone(),
31+
k.clone(),
3232
Value::new(uri, ValueKind::String(v.clone())),
3333
);
3434
}

src/file/format/json.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ fn from_json_value(uri: Option<&String>, value: &serde_json::Value) -> Value {
3636
let mut m = HashMap::new();
3737

3838
for (key, value) in table {
39-
m.insert(key.to_lowercase().clone(), from_json_value(uri, value));
39+
m.insert(key.clone(), from_json_value(uri, value));
4040
}
4141

4242
Value::new(uri, ValueKind::Table(m))

src/file/format/toml.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ fn from_toml_value(uri: Option<&String>, value: &toml::Value) -> Value {
2929
let mut m = HashMap::new();
3030

3131
for (key, value) in table {
32-
m.insert(key.to_lowercase().clone(), from_toml_value(uri, value));
32+
m.insert(key.clone(), from_toml_value(uri, value));
3333
}
3434

3535
Value::new(uri, m)

src/file/format/yaml.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ fn from_yaml_value(uri: Option<&String>, value: &yaml::Yaml) -> Value {
4242
let mut m = HashMap::new();
4343
for (key, value) in table {
4444
if let Some(k) = key.as_str() {
45-
m.insert(k.to_lowercase().to_owned(), from_yaml_value(uri, value));
45+
m.insert(k.to_owned(), from_yaml_value(uri, value));
4646
}
4747
// TODO: should we do anything for non-string keys?
4848
}

src/ser.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ impl<'a> ser::Serializer for &'a mut ConfigSerializer {
186186
_variant_index: u32,
187187
variant: &'static str,
188188
) -> Result<Self::Ok> {
189-
self.serialize_str(&variant.to_lowercase())
189+
self.serialize_str(&variant)
190190
}
191191

192192
fn serialize_newtype_struct<T>(self, _name: &'static str, value: &T) -> Result<Self::Ok>
@@ -206,7 +206,7 @@ impl<'a> ser::Serializer for &'a mut ConfigSerializer {
206206
where
207207
T: ?Sized + ser::Serialize,
208208
{
209-
self.push_key(&variant.to_lowercase());
209+
self.push_key(&variant);
210210
value.serialize(&mut *self)?;
211211
self.pop_key();
212212
Ok(())
@@ -235,7 +235,7 @@ impl<'a> ser::Serializer for &'a mut ConfigSerializer {
235235
variant: &'static str,
236236
_len: usize,
237237
) -> Result<Self::SerializeTupleVariant> {
238-
self.push_key(&variant.to_lowercase());
238+
self.push_key(&variant);
239239
Ok(self)
240240
}
241241

@@ -254,7 +254,7 @@ impl<'a> ser::Serializer for &'a mut ConfigSerializer {
254254
variant: &'static str,
255255
len: usize,
256256
) -> Result<Self::SerializeStructVariant> {
257-
self.push_key(&variant.to_lowercase());
257+
self.push_key(&variant);
258258
Ok(self)
259259
}
260260
}
@@ -493,7 +493,7 @@ impl ser::Serializer for StringKeySerializer {
493493
_variant_index: u32,
494494
variant: &str,
495495
) -> Result<Self::Ok> {
496-
Ok(variant.to_lowercase())
496+
Ok(variant.to_string())
497497
}
498498

499499
fn serialize_newtype_struct<T>(self, _name: &str, value: &T) -> Result<Self::Ok>

tests/get.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,7 @@ fn test_struct_array() {
206206
#[test]
207207
fn test_enum() {
208208
#[derive(Debug, Deserialize, PartialEq)]
209+
#[serde(rename_all = "lowercase")]
209210
enum Diode {
210211
Off,
211212
Brightness(i32),

tests/set.rs

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -82,15 +82,12 @@ fn test_set_arr_path() {
8282
fn test_set_capital() {
8383
let mut c = Config::default();
8484

85-
c.set_default("tHiS", false).unwrap();
86-
c.set("THAT", true).unwrap();
87-
c.merge(File::from_str("{\"loGleVel\": 5}", FileFormat::Json))
85+
c.set_default("this", false).unwrap();
86+
c.set("ThAt", true).unwrap();
87+
c.merge(File::from_str("{\"logLevel\": 5}", FileFormat::Json))
8888
.unwrap();
8989

9090
assert_eq!(c.get("this").ok(), Some(false));
91-
assert_eq!(c.get("ThIs").ok(), Some(false));
92-
assert_eq!(c.get("that").ok(), Some(true));
93-
assert_eq!(c.get("THAT").ok(), Some(true));
91+
assert_eq!(c.get("ThAt").ok(), Some(true));
9492
assert_eq!(c.get("logLevel").ok(), Some(5));
95-
assert_eq!(c.get("loglevel").ok(), Some(5));
9693
}

0 commit comments

Comments
 (0)