A provider of labels for model object, producing a human name for the model object. As an example, if object is an ArithmeticExpression with operator +, `a_an(o)` produces “a ‘+’ Expression”, the(o) produces “the + Expression”, and label produces “+ Expression”.
Produces a label for the given objects type/operator without article. If a Class is given, its name is used as label
# File lib/puppet/pops/model/model_label_provider.rb, line 13 def label o @@label_visitor.visit(o) end
# File lib/puppet/pops/model/model_label_provider.rb, line 22 def label_AccessExpression o ; "'[]' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 30 def label_AndExpression o ; "'and' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 21 def label_ArithmeticExpression o ; "'#{o.operator}' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 18 def label_Array o ; "Array" end
# File lib/puppet/pops/model/model_label_provider.rb, line 33 def label_AssignmentExpression o ; "'#{o.operator}' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 34 def label_AttributeOperation o ; "'#{o.operator}' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 79 def label_Bignum o ; "Integer" end
# File lib/puppet/pops/model/model_label_provider.rb, line 54 def label_BlockExpression o ; "Block Expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 66 def label_CallMethodExpression o ; "Method call" end
# File lib/puppet/pops/model/model_label_provider.rb, line 65 def label_CallNamedFunctionExpression o ; "Function Call" end
# File lib/puppet/pops/model/model_label_provider.rb, line 67 def label_CaseExpression o ; "'case' statement" end
# File lib/puppet/pops/model/model_label_provider.rb, line 68 def label_CaseOption o ; "Case Option" end
# File lib/puppet/pops/model/model_label_provider.rb, line 98 def label_Class o if o <= Puppet::Pops::Types::PAnyType simple_name = o.name.split('::').last simple_name[1..-5] + "-Type" else o.name end end
# File lib/puppet/pops/model/model_label_provider.rb, line 24 def label_CollectExpression o ; label(o.query) end
# File lib/puppet/pops/model/model_label_provider.rb, line 29 def label_ComparisonExpression o ; "'#{o.operator}' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 55 def label_ConcatenatedString o ; "Double Quoted String" end
# File lib/puppet/pops/model/model_label_provider.rb, line 25 def label_EppExpression o ; "Epp Template" end
# File lib/puppet/pops/model/model_label_provider.rb, line 26 def label_ExportedQuery o ; "Exported Query" end
# File lib/puppet/pops/model/model_label_provider.rb, line 17 def label_Factory o ; label(o.current) end
# File lib/puppet/pops/model/model_label_provider.rb, line 40 def label_FalseClass o ; "Boolean" end
# File lib/puppet/pops/model/model_label_provider.rb, line 78 def label_Fixnum o ; "Integer" end
# File lib/puppet/pops/model/model_label_provider.rb, line 80 def label_Float o ; "Float" end
# File lib/puppet/pops/model/model_label_provider.rb, line 84 def label_Hash o ; "Hash" end
# File lib/puppet/pops/model/model_label_provider.rb, line 56 def label_HeredocExpression o ; "'@(#{o.syntax})' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 57 def label_HostClassDefinition o ; "Host Class Definition" end
# File lib/puppet/pops/model/model_label_provider.rb, line 63 def label_IfExpression o ; "'if' statement" end
# File lib/puppet/pops/model/model_label_provider.rb, line 32 def label_InExpression o ; "'in' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 77 def label_Integer o ; "Integer" end
# File lib/puppet/pops/model/model_label_provider.rb, line 37 def label_KeyedEntry o ; "Hash Entry" end
# File lib/puppet/pops/model/model_label_provider.rb, line 42 def label_LambdaExpression o ; "Lambda" end
# File lib/puppet/pops/model/model_label_provider.rb, line 38 def label_LiteralBoolean o ; "Boolean" end
# File lib/puppet/pops/model/model_label_provider.rb, line 43 def label_LiteralDefault o ; "'default' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 20 def label_LiteralFloat o ; "Literal Float" end
# File lib/puppet/pops/model/model_label_provider.rb, line 36 def label_LiteralHash o ; "Hash Expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 19 def label_LiteralInteger o ; "Literal Integer" end
# File lib/puppet/pops/model/model_label_provider.rb, line 35 def label_LiteralList o ; "Array Expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 45 def label_LiteralRegularExpression o ; "Regular Expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 41 def label_LiteralString o ; "String" end
# File lib/puppet/pops/model/model_label_provider.rb, line 44 def label_LiteralUndef o ; "'undef' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 23 def label_MatchExpression o ; "'#{o.operator}' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 47 def label_NamedAccessExpression o ; "'.' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 48 def label_NilClass o ; "Undef Value" end
# File lib/puppet/pops/model/model_label_provider.rb, line 58 def label_NodeDefinition o ; "Node Definition" end
# File lib/puppet/pops/model/model_label_provider.rb, line 46 def label_Nop o ; "Nop Expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 49 def label_NotExpression o ; "'not' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 83 def label_Object o ; "Object" end
# File lib/puppet/pops/model/model_label_provider.rb, line 31 def label_OrExpression o ; "'or' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 87 def label_PAnyType o ; "#{Puppet::Pops::Types::TypeCalculator.string(o)}-Type" end
# File lib/puppet/pops/model/model_label_provider.rb, line 90 def label_PResourceType o if o.title "#{Puppet::Pops::Types::TypeCalculator.string(o)} Resource-Reference" else "#{Puppet::Pops::Types::TypeCalculator.string(o)}-Type" end end
# File lib/puppet/pops/model/model_label_provider.rb, line 61 def label_Parameter o ; "Parameter Definition" end
# File lib/puppet/pops/model/model_label_provider.rb, line 62 def label_ParenthesizedExpression o ; "Parenthesized Expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 85 def label_QualifiedName o ; "Name" end
# File lib/puppet/pops/model/model_label_provider.rb, line 86 def label_QualifiedReference o ; "Type-Name" end
# File lib/puppet/pops/model/model_label_provider.rb, line 28 def label_QueryExpression o ; "Collect Query" end
# File lib/puppet/pops/model/model_label_provider.rb, line 82 def label_Regexp o ; "Regexp" end
# File lib/puppet/pops/model/model_label_provider.rb, line 71 def label_RelationshipExpression o ; "'#{o.operator}' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 70 def label_RenderExpression o ; "Epp Interpolated Expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 69 def label_RenderStringExpression o ; "Epp Text" end
# File lib/puppet/pops/model/model_label_provider.rb, line 88 def label_ReservedWord o ; "Reserved Word '#{o.word}'" end
# File lib/puppet/pops/model/model_label_provider.rb, line 72 def label_ResourceBody o ; "Resource Instance Definition" end
# File lib/puppet/pops/model/model_label_provider.rb, line 73 def label_ResourceDefaultsExpression o ; "Resource Defaults Expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 74 def label_ResourceExpression o ; "Resource Statement" end
# File lib/puppet/pops/model/model_label_provider.rb, line 60 def label_ResourceOverrideExpression o ; "Resource Override" end
# File lib/puppet/pops/model/model_label_provider.rb, line 59 def label_ResourceTypeDefinition o ; "'define' expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 76 def label_SelectorEntry o ; "Selector Option" end
# File lib/puppet/pops/model/model_label_provider.rb, line 75 def label_SelectorExpression o ; "Selector Expression" end
# File lib/puppet/pops/model/model_label_provider.rb, line 81 def label_String o ; "String" end
# File lib/puppet/pops/model/model_label_provider.rb, line 51 def label_TextExpression o ; "Expression in Interpolated String" end
# File lib/puppet/pops/model/model_label_provider.rb, line 39 def label_TrueClass o ; "Boolean" end
# File lib/puppet/pops/model/model_label_provider.rb, line 52 def label_UnaryMinusExpression o ; "Unary Minus" end
# File lib/puppet/pops/model/model_label_provider.rb, line 53 def label_UnfoldExpression o ; "Unfold" end
# File lib/puppet/pops/model/model_label_provider.rb, line 64 def label_UnlessExpression o ; "'unless' Statement" end
# File lib/puppet/pops/model/model_label_provider.rb, line 50 def label_VariableExpression o ; "Variable" end
# File lib/puppet/pops/model/model_label_provider.rb, line 27 def label_VirtualQuery o ; "Virtual Query" end
# File lib/puppet/pops/model/model_label_provider.rb, line 6 def initialize @@label_visitor ||= Puppet::Pops::Visitor.new(self,"label",0,0) end