parser.go 829 B

1234567891011121314151617181920212223
  1. package customcost
  2. import "github.com/opencost/opencost/core/pkg/filter/ast"
  3. // a slice of all the custom costs field instances the lexer should recognize as
  4. // valid left-hand comparators
  5. var customCostFilterFields = []*ast.Field{
  6. ast.NewField(CustomCostZoneProp),
  7. ast.NewField(CustomCostAccountNameProp),
  8. ast.NewField(CustomCostChargeCategoryProp),
  9. ast.NewField(CustomCostDescriptionProp),
  10. ast.NewField(CustomCostResourceNameProp),
  11. ast.NewField(CustomCostResourceTypeProp),
  12. ast.NewField(CustomCostProviderIdProp),
  13. ast.NewField(CustomCostUsageUnitProp),
  14. ast.NewField(CustomCostDomainProp),
  15. }
  16. // NewCustomCostFilterParser creates a new `ast.FilterParser` implementation
  17. // which uses CustomCost specific fields
  18. func NewCustomCostFilterParser() ast.FilterParser {
  19. return ast.NewFilterParser(customCostFilterFields)
  20. }