Do what clippy says

This commit is contained in:
Richard Feldman 2019-12-02 22:18:47 -05:00
parent 038bad7123
commit a57c3d6ec8
2 changed files with 41 additions and 43 deletions

View file

@ -210,53 +210,51 @@ where
noncapitalized_parts, noncapitalized_parts,
); );
} }
} else { } else if noncapitalized_parts.is_empty() {
if noncapitalized_parts.is_empty() { // We have capitalized parts only, so this must be a tag.
// We have capitalized parts only, so this must be a tag. match capitalized_parts.first() {
match capitalized_parts.first() { Some(value) => {
Some(value) => { if capitalized_parts.len() == 1 {
if capitalized_parts.len() == 1 { if is_private_tag {
if is_private_tag { Ident::PrivateTag(value)
Ident::PrivateTag(value)
} else {
Ident::GlobalTag(value)
}
} else { } else {
// This is a qualified tag, which is not allowed! Ident::GlobalTag(value)
return malformed(
None,
arena,
state,
chars,
capitalized_parts,
noncapitalized_parts,
);
} }
} } else {
None => { // This is a qualified tag, which is not allowed!
// We had neither capitalized nor noncapitalized parts, return malformed(
// yet we made it this far. The only explanation is that this was None,
// a stray '.' drifting through the cosmos. arena,
return Err(unexpected('.', 1, state, Attempting::Identifier)); state,
chars,
capitalized_parts,
noncapitalized_parts,
);
} }
} }
} else if is_private_tag { None => {
// This is qualified field access with an '@' in front, which does not make sense! // We had neither capitalized nor noncapitalized parts,
return malformed( // yet we made it this far. The only explanation is that this was
None, // a stray '.' drifting through the cosmos.
arena, return Err(unexpected('.', 1, state, Attempting::Identifier));
state, }
chars,
capitalized_parts,
noncapitalized_parts,
);
} else {
// We have multiple noncapitalized parts, so this must be field access.
Ident::Access(MaybeQualified {
module_parts: capitalized_parts.into_bump_slice(),
value: noncapitalized_parts.into_bump_slice(),
})
} }
} else if is_private_tag {
// This is qualified field access with an '@' in front, which does not make sense!
return malformed(
None,
arena,
state,
chars,
capitalized_parts,
noncapitalized_parts,
);
} else {
// We have multiple noncapitalized parts, so this must be field access.
Ident::Access(MaybeQualified {
module_parts: capitalized_parts.into_bump_slice(),
value: noncapitalized_parts.into_bump_slice(),
})
}; };
let state = state.advance_without_indenting(chars_parsed)?; let state = state.advance_without_indenting(chars_parsed)?;

View file

@ -1068,7 +1068,7 @@ fn ident_to_expr<'a>(arena: &'a Bump, src: Ident<'a>) -> Expr<'a> {
Ident::GlobalTag(string) => Expr::GlobalTag(string), Ident::GlobalTag(string) => Expr::GlobalTag(string),
Ident::PrivateTag(string) => Expr::PrivateTag(string), Ident::PrivateTag(string) => Expr::PrivateTag(string),
Ident::Access(info) => { Ident::Access(info) => {
let mut iter = info.value.into_iter(); let mut iter = info.value.iter();
// The first value in the iterator is the variable name, // The first value in the iterator is the variable name,
// e.g. `foo` in `foo.bar.baz` // e.g. `foo` in `foo.bar.baz`