Module: Olyx::Guardrails::PolicyRuleComponents::PatternCompiler

Defined in:
lib/olyx/guardrails/policy_rule/pattern_compiler.rb

Overview

Compiles bounded policy regexes and rejects empty matching patterns.

Class Method Summary collapse

Class Method Details

.call(patterns:, terms:, match:) ⇒ Object



13
14
15
16
17
# File 'lib/olyx/guardrails/policy_rule/pattern_compiler.rb', line 13

def call(patterns:, terms:, match:)
  validate_collections!(patterns, terms)
  compiled = patterns.map { |value| RegexpCompiler.call(value) }
  compiled.concat(terms.map { |term| TermCompiler.call(term, mode: match) }).freeze
end