class Puppet::Pops::Types::PClassType

Represents a (host-) class in the Puppet Language. @api public

Constants

DEFAULT

Attributes

class_name[R]

Public Class Methods

new(class_name) click to toggle source
     # File lib/puppet/pops/types/types.rb
3166 def initialize(class_name)
3167   @class_name = class_name
3168 end
register_ptype(loader, ir) click to toggle source
     # File lib/puppet/pops/types/types.rb
3157 def self.register_ptype(loader, ir)
3158   create_ptype(loader, ir, 'CatalogEntryType',
3159     'class_name' => {
3160       KEY_TYPE => POptionalType.new(PStringType::NON_EMPTY),
3161       KEY_VALUE => nil
3162     }
3163   )
3164 end

Public Instance Methods

eql?(o) click to toggle source
     # File lib/puppet/pops/types/types.rb
3173 def eql?(o)
3174   self.class == o.class && @class_name == o.class_name
3175 end
hash() click to toggle source
     # File lib/puppet/pops/types/types.rb
3170 def hash
3171   11 ^ @class_name.hash
3172 end

Protected Instance Methods

_assignable?(o, guard) click to toggle source

@api private

     # File lib/puppet/pops/types/types.rb
3182 def _assignable?(o, guard)
3183   return false unless o.is_a?(PClassType)
3184   # Class = Class[name}, Class[name] != Class
3185   return true if @class_name.nil?
3186   # Class[name] = Class[name]
3187   @class_name == o.class_name
3188 end