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
692 def self.register_ptype(loader, ir)
693   create_ptype(loader, ir, 'AnyType')
694 end

Public Instance Methods

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

Protected Instance Methods

_assignable?(o, guard) click to toggle source

@api private

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