Class: MarkdownComposer::WhereRegistry
- Inherits:
-
Object
- Object
- MarkdownComposer::WhereRegistry
- Defined in:
- lib/markdown_composer/registries/where_registry.rb
Instance Attribute Summary collapse
-
#fields ⇒ Object
readonly
Returns the value of attribute fields.
-
#groups ⇒ Object
readonly
Returns the value of attribute groups.
-
#predicates ⇒ Object
readonly
Returns the value of attribute predicates.
Instance Method Summary collapse
- #condition_map ⇒ Object
- #field?(token) ⇒ Boolean
- #group?(token) ⇒ Boolean
-
#initialize(fields:, predicates:, groups:) ⇒ WhereRegistry
constructor
A new instance of WhereRegistry.
- #predicate?(token) ⇒ Boolean
- #predicates_for(field) ⇒ Object
- #to_h ⇒ Object
Constructor Details
#initialize(fields:, predicates:, groups:) ⇒ WhereRegistry
Returns a new instance of WhereRegistry.
50 51 52 53 54 |
# File 'lib/markdown_composer/registries/where_registry.rb', line 50 def initialize(fields:, predicates:, groups:) @fields = Registry.new(fields) @predicates = Registry.new(predicates) @groups = Registry.new(groups) end |
Instance Attribute Details
#fields ⇒ Object (readonly)
Returns the value of attribute fields.
48 49 50 |
# File 'lib/markdown_composer/registries/where_registry.rb', line 48 def fields @fields end |
#groups ⇒ Object (readonly)
Returns the value of attribute groups.
48 49 50 |
# File 'lib/markdown_composer/registries/where_registry.rb', line 48 def groups @groups end |
#predicates ⇒ Object (readonly)
Returns the value of attribute predicates.
48 49 50 |
# File 'lib/markdown_composer/registries/where_registry.rb', line 48 def predicates @predicates end |
Instance Method Details
#condition_map ⇒ Object
72 73 74 |
# File 'lib/markdown_composer/registries/where_registry.rb', line 72 def condition_map fields.entries.to_h { |entry| [ entry.token, entry.predicates ] } end |
#field?(token) ⇒ Boolean
56 57 58 |
# File 'lib/markdown_composer/registries/where_registry.rb', line 56 def field?(token) fields.key?(token) end |
#group?(token) ⇒ Boolean
64 65 66 |
# File 'lib/markdown_composer/registries/where_registry.rb', line 64 def group?(token) groups.key?(token) end |
#predicate?(token) ⇒ Boolean
60 61 62 |
# File 'lib/markdown_composer/registries/where_registry.rb', line 60 def predicate?(token) predicates.key?(token) end |
#predicates_for(field) ⇒ Object
68 69 70 |
# File 'lib/markdown_composer/registries/where_registry.rb', line 68 def predicates_for(field) fields[field]&.predicates || [] end |
#to_h ⇒ Object
76 77 78 79 80 81 82 |
# File 'lib/markdown_composer/registries/where_registry.rb', line 76 def to_h { fields: fields.to_a, predicates: predicates.to_a, groups: groups.to_a } end |