class Puppet::Pops::Types::PScalarType

Type that is a Scalar @api public

Constants

DEFAULT

Public Class Methods

register_ptype(loader, ir) click to toggle source
    # File lib/puppet/pops/types/types.rb
693 def self.register_ptype(loader, ir)
694   create_ptype(loader, ir, 'AnyType')
695 end

Public Instance Methods

instance?(o, guard = nil) click to toggle source
    # File lib/puppet/pops/types/types.rb
697 def instance?(o, guard = nil)
698   if o.is_a?(String) || o.is_a?(Numeric) || o.is_a?(TrueClass) || o.is_a?(FalseClass) || o.is_a?(Regexp)
699     true
700   elsif o.instance_of?(Array) || o.instance_of?(Hash) || o.is_a?(PAnyType) || o.is_a?(NilClass)
701     false
702   else
703     assignable?(TypeCalculator.infer(o))
704   end
705 end
roundtrip_with_string?() click to toggle source
    # File lib/puppet/pops/types/types.rb
707 def roundtrip_with_string?
708   true
709 end

Protected Instance Methods

_assignable?(o, guard) click to toggle source

@api private

    # File lib/puppet/pops/types/types.rb
716 def _assignable?(o, guard)
717   o.is_a?(PScalarType) ||
718     PStringType::DEFAULT.assignable?(o, guard) ||
719     PIntegerType::DEFAULT.assignable?(o, guard) ||
720     PFloatType::DEFAULT.assignable?(o, guard) ||
721     PBooleanType::DEFAULT.assignable?(o, guard) ||
722     PRegexpType::DEFAULT.assignable?(o, guard) ||
723     PSemVerType::DEFAULT.assignable?(o, guard) ||
724     PSemVerRangeType::DEFAULT.assignable?(o, guard) ||
725     PTimespanType::DEFAULT.assignable?(o, guard) ||
726     PTimestampType::DEFAULT.assignable?(o, guard)
727 end