identifier function
Implementation
Parser identifier() {
return (letter() & (word() | char('-')).star())
.flatten()
.where((name) => !['and', 'or', 'not', 'contains'].contains(name))
.map((name) => Identifier(name))
.labeled('identifier');
}