Class: Graphiti::ActiveGraph::Util::Transformers::RelationParam
- Inherits:
-
Object
- Object
- Graphiti::ActiveGraph::Util::Transformers::RelationParam
- Defined in:
- lib/graphiti/active_graph/util/transformers/relation_param.rb
Instance Attribute Summary collapse
-
#map ⇒ Object
readonly
Returns the value of attribute map.
Instance Method Summary collapse
-
#initialize(relation_param_str) ⇒ RelationParam
constructor
A new instance of RelationParam.
- #rel_length(length_part = nil) ⇒ Object
- #rel_length_number ⇒ Object
- #rel_limit(limit_part = nil) ⇒ Object
- #rel_limit_number ⇒ Object
- #rel_name ⇒ Object
- #rel_name_n_length ⇒ Object
- #rel_name_sym ⇒ Object
- #split_rel_length(retain_rel_limit) ⇒ Object
Constructor Details
#initialize(relation_param_str) ⇒ RelationParam
Returns a new instance of RelationParam.
7 8 9 |
# File 'lib/graphiti/active_graph/util/transformers/relation_param.rb', line 7 def initialize(relation_param_str) @map = Graphiti::ActiveGraph::Util::Parsers::RelChain.new.rel_param_rule.parse(relation_param_str.to_s) end |
Instance Attribute Details
#map ⇒ Object (readonly)
Returns the value of attribute map.
5 6 7 |
# File 'lib/graphiti/active_graph/util/transformers/relation_param.rb', line 5 def map @map end |
Instance Method Details
#rel_length(length_part = nil) ⇒ Object
40 41 42 |
# File 'lib/graphiti/active_graph/util/transformers/relation_param.rb', line 40 def rel_length(length_part = nil) join(length_part || map[:length_part]) end |
#rel_length_number ⇒ Object
44 45 46 |
# File 'lib/graphiti/active_graph/util/transformers/relation_param.rb', line 44 def rel_length_number rel_length(map[:length_part]&.except(:ast)) end |
#rel_limit(limit_part = nil) ⇒ Object
24 25 26 |
# File 'lib/graphiti/active_graph/util/transformers/relation_param.rb', line 24 def rel_limit(limit_part = nil) join(limit_part || map[:limit_part]) end |
#rel_limit_number ⇒ Object
28 29 30 |
# File 'lib/graphiti/active_graph/util/transformers/relation_param.rb', line 28 def rel_limit_number rel_limit(map[:limit_part]&.except(:limit_ast)) end |
#rel_name ⇒ Object
32 33 34 |
# File 'lib/graphiti/active_graph/util/transformers/relation_param.rb', line 32 def rel_name map[:rel_name].to_s end |
#rel_name_n_length ⇒ Object
20 21 22 |
# File 'lib/graphiti/active_graph/util/transformers/relation_param.rb', line 20 def rel_name_n_length "#{rel_name}#{rel_length}" end |
#rel_name_sym ⇒ Object
36 37 38 |
# File 'lib/graphiti/active_graph/util/transformers/relation_param.rb', line 36 def rel_name_sym rel_name.to_sym end |
#split_rel_length(retain_rel_limit) ⇒ Object
11 12 13 14 15 16 17 18 |
# File 'lib/graphiti/active_graph/util/transformers/relation_param.rb', line 11 def split_rel_length(retain_rel_limit) rel_name_part = if retain_rel_limit (rel_limit || '') + rel_name else rel_name_sym end [rel_name_part.to_sym, rel_length_number] end |