Class: LintFu::ModelElementBuilder
- Inherits:
-
SexpProcessor
- Object
- SexpProcessor
- LintFu::ModelElementBuilder
- Defined in:
- lib/lint_fu/model_element_builder.rb
Direct Known Subclasses
ActionPack::ModelControllerBuilder, ActiveRecord::ModelModelBuilder, Rails::ModelApplicationBuilder
Instance Attribute Summary collapse
-
#model_elements ⇒ Object
readonly
Returns the value of attribute model_elements.
-
#namespace ⇒ Object
readonly
Returns the value of attribute namespace.
Instance Method Summary collapse
-
#initialize(namespace = nil) ⇒ ModelElementBuilder
constructor
A new instance of ModelElementBuilder.
-
#process_class(sexp) ⇒ Object
- sexp
-
[:class, <classname>, <superclass|nil>, <:scope - CLASS DEFS>].
-
#process_module(sexp) ⇒ Object
- sexp
-
[:module, <modulename>, <:scope - MODULE DEFS>].
Constructor Details
#initialize(namespace = nil) ⇒ ModelElementBuilder
Returns a new instance of ModelElementBuilder.
5 6 7 8 9 10 11 |
# File 'lib/lint_fu/model_element_builder.rb', line 5 def initialize(namespace=nil) super() @model_elements = [] @namespace = namespace || [] self.require_empty = false self.auto_shift_type = false end |
Instance Attribute Details
#model_elements ⇒ Object (readonly)
Returns the value of attribute model_elements.
3 4 5 |
# File 'lib/lint_fu/model_element_builder.rb', line 3 def model_elements @model_elements end |
#namespace ⇒ Object (readonly)
Returns the value of attribute namespace.
3 4 5 |
# File 'lib/lint_fu/model_element_builder.rb', line 3 def namespace @namespace end |
Instance Method Details
#process_class(sexp) ⇒ Object
- sexp
- :class, <classname>, <superclass|nil>, <:scope - CLASS DEFS>
22 23 24 25 26 27 |
# File 'lib/lint_fu/model_element_builder.rb', line 22 def process_class(sexp) @namespace.push sexp[1] process(sexp[3]) @namespace.pop return sexp end |
#process_module(sexp) ⇒ Object
- sexp
- :module, <modulename>, <:scope - MODULE DEFS>
14 15 16 17 18 19 |
# File 'lib/lint_fu/model_element_builder.rb', line 14 def process_module(sexp) @namespace.push sexp[1] process(sexp[2]) @namespace.pop return sexp end |