Class: ExpressionParser
- Inherits:
-
Object
- Object
- ExpressionParser
- Defined in:
- lib/claws/engine.rb
Class Method Summary collapse
-
.get_engine ⇒ Object
rubocop:disable Naming/AccessorMethodName, Metrics/AbcSize.
- .parse_expression(expression) ⇒ Object
Class Method Details
.get_engine ⇒ Object
rubocop:disable Naming/AccessorMethodName, Metrics/AbcSize
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/claws/engine.rb', line 8 def self.get_engine # rubocop:disable Naming/AccessorMethodName, Metrics/AbcSize EquationEngine.new( default: { # workflow: workflow, # jobs: workflow["jobs"], # data: rules["data"], }, methods: { contains: ->(haystack, needle) { !haystack.nil? and haystack.include? needle }, contains_any: ->(haystack, needles) { !haystack.nil? and needles.any? { |n| haystack.include? n } }, startswith: ->(string, needle) { string.to_s.start_with? needle }, endswith: ->(string, needle) { string.to_s.end_with? needle }, difference: ->(arr1, arr2) { arr1.difference arr2 }, count: ->(n) { n.length } } ) end |
.parse_expression(expression) ⇒ Object
4 5 6 |
# File 'lib/claws/engine.rb', line 4 def self.parse_expression(expression) get_engine.parse(rule: expression) end |