Sha256: 196eedc32011e31791c86d457f91489ea8dc37ec2431d8eb40b17c9d964fc926

Contents?: true

Size: 882 Bytes

Versions: 207

Compression:

Stored size: 882 Bytes

Contents

module Origen
  module Parameters
    # An instance of this class is returned whenever the parameter context is set to
    # a value for which no parameter set has been defined.
    #
    # Sometime this may be valid in the case where the context is actually implemented
    # by another object which shadows the context.
    #
    # The missing allows the user to do params.context to retrieve the value of the
    # current context, but it will error out with a useful error message if they try
    # to do anything else (i.e. retrieve a parameter from it)
    class Missing
      attr_reader :owner

      def initialize(options = {})
        @owner = options[:owner]
      end

      def context
        owner._parameter_current
      end

      def method_missing(_method, *_args, &_block)
        owner.send(:_validate_parameter_set_name, context)
      end
    end
  end
end

Version data entries

207 entries across 207 versions & 1 rubygems

Version Path
origen-0.60.19 lib/origen/parameters/missing.rb
origen-0.60.18 lib/origen/parameters/missing.rb
origen-0.60.17 lib/origen/parameters/missing.rb
origen-0.60.16 lib/origen/parameters/missing.rb
origen-0.60.14 lib/origen/parameters/missing.rb
origen-0.60.13 lib/origen/parameters/missing.rb
origen-0.60.12 lib/origen/parameters/missing.rb
origen-0.60.11 lib/origen/parameters/missing.rb
origen-0.60.10 lib/origen/parameters/missing.rb
origen-0.60.9 lib/origen/parameters/missing.rb
origen-0.60.8 lib/origen/parameters/missing.rb
origen-0.60.7 lib/origen/parameters/missing.rb
origen-0.60.6 lib/origen/parameters/missing.rb
origen-0.60.5 lib/origen/parameters/missing.rb
origen-0.60.4 lib/origen/parameters/missing.rb
origen-0.60.3 lib/origen/parameters/missing.rb
origen-0.60.2 lib/origen/parameters/missing.rb
origen-0.60.1 lib/origen/parameters/missing.rb
origen-0.60.0 lib/origen/parameters/missing.rb
origen-0.59.8 lib/origen/parameters/missing.rb