mirror of
https://github.com/aquasecurity/trivy.git
synced 2025-12-23 07:29:00 -08:00
38 lines
435 B
Go
38 lines
435 B
Go
package token
|
|
|
|
import (
|
|
"strings"
|
|
)
|
|
|
|
const (
|
|
ILLEGAL = "ILLEGAL"
|
|
EOF = "EOF"
|
|
|
|
IDENT = "IDENT"
|
|
|
|
LPAREN = "("
|
|
RPAREN = ")"
|
|
|
|
AND = "AND"
|
|
OR = "OR"
|
|
)
|
|
|
|
var keywords = map[string]TokenType{
|
|
"AND": AND,
|
|
"OR": OR,
|
|
}
|
|
|
|
type TokenType string
|
|
|
|
type Token struct {
|
|
Type TokenType
|
|
Literal string
|
|
}
|
|
|
|
func LookupIdent(ident string) TokenType {
|
|
if tok, ok := keywords[strings.ToUpper(ident)]; ok {
|
|
return tok
|
|
}
|
|
return IDENT
|
|
}
|