class PuppetClass
Public Class Methods
new(tokens, index)
click to toggle source
# File lib/model/puppet_class.rb, line 5 def initialize(tokens, index) @tokens, @index = tokens, index end
Public Instance Methods
documentation_list()
click to toggle source
# File lib/model/puppet_class.rb, line 26 def documentation_list @documentation_list ||= DocumentationList.new(documentation_tokens, @tokens.index(documentation_tokens.first), @tokens.index(documentation_tokens.last)) end
has_parameter_documentation?()
click to toggle source
# File lib/model/puppet_class.rb, line 15 def has_parameter_documentation? !parameter_documentation_list.empty? end
name()
click to toggle source
# File lib/model/puppet_class.rb, line 9 def name @name ||= @index[:tokens].select do |token| token.type == :NAME end.first.value end
parameter_documentation_end_index()
click to toggle source
# File lib/model/puppet_class.rb, line 54 def parameter_documentation_end_index @tokens.index(parameter_documentation_list.last.tokens.last) + 1 end
parameter_documentation_list()
click to toggle source
# File lib/model/puppet_class.rb, line 30 def parameter_documentation_list documentation_list.parameter_documentation_list end
parameter_documentation_start_index()
click to toggle source
# File lib/model/puppet_class.rb, line 50 def parameter_documentation_start_index @tokens.index(parameter_documentation_list.first.tokens.first) end
parameter_list()
click to toggle source
# File lib/model/puppet_class.rb, line 19 def parameter_list param_tokens = @index[:param_tokens] return if param_tokens.nil? @parameter_list ||= ParameterList.new(param_tokens, @tokens.index(param_tokens.first), @tokens.index(param_tokens.last)) end
sorted_parameter_documentation_list()
click to toggle source
# File lib/model/puppet_class.rb, line 34 def sorted_parameter_documentation_list sorted_parameter_list.inject([]) do |memo, parameter| documentation = parameter_documentation_list.select do |parameter_documentation| parameter_documentation.name == parameter.name end.first memo << documentation if documentation memo end end
sorted_parameter_list()
click to toggle source
# File lib/model/puppet_class.rb, line 46 def sorted_parameter_list parameter_list.sort end
Private Instance Methods
documentation_tokens()
click to toggle source
# File lib/model/puppet_class.rb, line 59 def documentation_tokens return @doc_tokens unless @doc_tokens.nil? || @doc_tokens.empty? @doc_tokens = [] prev_token = @index[:tokens].first.prev_token while (prev_token && prev_token.type != :RBRACE) @doc_tokens << prev_token prev_token = prev_token.prev_token end @doc_tokens.reverse! return @doc_tokens end