Module: Ruby::Rego::Builtins::Comparisons
- Extended by:
- RegistryHelpers
- Defined in:
- lib/ruby/rego/builtins/comparisons.rb,
lib/ruby/rego/builtins/comparisons/casts.rb
Overview
Built-in comparison and casting helpers.
Defined Under Namespace
Modules: Casts
Constant Summary collapse
- COMPARISON_FUNCTIONS =
{ "equal" => { arity: 2, handler: :equal }, "to_number" => { arity: 1, handler: :to_number }, "cast_string" => { arity: 1, handler: :cast_string }, "cast_boolean" => { arity: 1, handler: :cast_boolean }, "cast_array" => { arity: 1, handler: :cast_array }, "cast_set" => { arity: 1, handler: :cast_set }, "cast_object" => { arity: 1, handler: :cast_object } }.freeze
Class Method Summary collapse
-
.cast_array(value) ⇒ Ruby::Rego::ArrayValue
-
.cast_boolean(value) ⇒ Ruby::Rego::BooleanValue
-
.cast_object(value) ⇒ Ruby::Rego::ObjectValue
-
.cast_set(value) ⇒ Ruby::Rego::SetValue
-
.cast_string(value) ⇒ Ruby::Rego::StringValue
-
.equal(left, right) ⇒ Ruby::Rego::BooleanValue
-
.register! ⇒ Ruby::Rego::Builtins::BuiltinRegistry
-
.to_number(value) ⇒ Ruby::Rego::NumberValue
Methods included from RegistryHelpers
Class Method Details
.cast_array(value) ⇒ Ruby::Rego::ArrayValue
64 65 66 |
# File 'lib/ruby/rego/builtins/comparisons.rb', line 64 def self.cast_array(value) Casts.cast_array(value) end |
.cast_boolean(value) ⇒ Ruby::Rego::BooleanValue
58 59 60 |
# File 'lib/ruby/rego/builtins/comparisons.rb', line 58 def self.cast_boolean(value) Casts.cast_boolean(value) end |
.cast_object(value) ⇒ Ruby::Rego::ObjectValue
76 77 78 |
# File 'lib/ruby/rego/builtins/comparisons.rb', line 76 def self.cast_object(value) Casts.cast_object(value) end |
.cast_set(value) ⇒ Ruby::Rego::SetValue
70 71 72 |
# File 'lib/ruby/rego/builtins/comparisons.rb', line 70 def self.cast_set(value) Casts.cast_set(value) end |
.cast_string(value) ⇒ Ruby::Rego::StringValue
52 53 54 |
# File 'lib/ruby/rego/builtins/comparisons.rb', line 52 def self.cast_string(value) Casts.cast_string(value) end |
.equal(left, right) ⇒ Ruby::Rego::BooleanValue
40 41 42 |
# File 'lib/ruby/rego/builtins/comparisons.rb', line 40 def self.equal(left, right) BooleanValue.new(left == right) end |
.register! ⇒ Ruby::Rego::Builtins::BuiltinRegistry
27 28 29 30 31 32 33 |
# File 'lib/ruby/rego/builtins/comparisons.rb', line 27 def self.register! registry = BuiltinRegistry.instance register_configured_functions(registry, COMPARISON_FUNCTIONS) registry end |
.to_number(value) ⇒ Ruby::Rego::NumberValue
46 47 48 |
# File 'lib/ruby/rego/builtins/comparisons.rb', line 46 def self.to_number(value) Casts.to_number(value) end |