nicer 0 case on match

This commit is contained in:
Rob Ede 2021-07-17 00:54:51 +01:00
parent f60f9ebe25
commit fae7012c4b
No known key found for this signature in database
GPG Key ID: 97C636207D3EF933
1 changed files with 10 additions and 12 deletions

View File

@ -81,19 +81,17 @@ impl ResourceDef {
match path.patterns() { match path.patterns() {
Patterns::Single(pattern) => ResourceDef::from_single_pattern(&pattern, false), Patterns::Single(pattern) => ResourceDef::from_single_pattern(&pattern, false),
// since zero length pattern sets are possible
// just return a useless `ResourceDef`
Patterns::List(patterns) if patterns.is_empty() => ResourceDef {
id: 0,
name: String::new(),
pattern: String::new(),
pat_type: PatternType::DynamicSet(RegexSet::empty(), Vec::new()),
elements: None,
},
Patterns::List(patterns) => { Patterns::List(patterns) => {
if patterns.is_empty() {
// since zero length pattern sets are possible, return a useless `ResourceDef`
return ResourceDef {
id: 0,
name: String::new(),
pattern: String::new(),
pat_type: PatternType::DynamicSet(RegexSet::empty(), Vec::new()),
elements: None,
};
}
let mut re_set = Vec::with_capacity(patterns.len()); let mut re_set = Vec::with_capacity(patterns.len());
let mut pattern_data = Vec::new(); let mut pattern_data = Vec::new();