Class: ActiveCypher::RailsLensExt::Extension
- Inherits:
-
RailsLens::Extensions::Base
- Object
- RailsLens::Extensions::Base
- ActiveCypher::RailsLensExt::Extension
- Defined in:
- lib/active_cypher/rails_lens_ext/extension.rb
Constant Summary collapse
- INTERFACE_VERSION =
'1.0'
Class Method Summary collapse
Instance Method Summary collapse
-
#annotate ⇒ Object
Generate annotation string for ActiveCypher models.
-
#erd_additions ⇒ Object
Generate ERD additions for graph visualization.
-
#notes ⇒ Object
Generate analysis notes for best practices.
Class Method Details
.detect? ⇒ Boolean
68 69 70 71 72 73 74 75 76 |
# File 'lib/active_cypher/rails_lens_ext/extension.rb', line 68 def detect? return false unless gem_available?(gem_name) # Ensure ActiveCypher is loaded require 'activecypher' unless defined?(::ActiveCypher::Base) true rescue LoadError false end |
.gem_name ⇒ Object
64 65 66 |
# File 'lib/active_cypher/rails_lens_ext/extension.rb', line 64 def gem_name 'activecypher' end |
Instance Method Details
#annotate ⇒ Object
Generate annotation string for ActiveCypher models
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 |
# File 'lib/active_cypher/rails_lens_ext/extension.rb', line 80 def annotate return nil unless active_cypher_model? lines = [] if node_class? lines.concat(node_annotation_lines) elsif relationship_class? lines.concat(relationship_annotation_lines) end return nil if lines.empty? lines.join("\n") end |
#erd_additions ⇒ Object
Generate ERD additions for graph visualization
112 113 114 115 116 117 118 119 120 121 122 |
# File 'lib/active_cypher/rails_lens_ext/extension.rb', line 112 def erd_additions return default_erd_additions unless active_cypher_model? if node_class? node_erd_additions elsif relationship_class? relationship_erd_additions else default_erd_additions end end |
#notes ⇒ Object
Generate analysis notes for best practices
97 98 99 100 101 102 103 104 105 106 107 108 109 |
# File 'lib/active_cypher/rails_lens_ext/extension.rb', line 97 def notes return [] unless active_cypher_model? notes = [] if node_class? notes.concat(node_notes) elsif relationship_class? notes.concat(relationship_notes) end notes end |