Class: When::EX::Extent

Inherits:
Object
  • Object
show all
Defined in:
lib/when_exe/basictypes.rb

Overview

参照系の時間的および空間的な使用範囲を記述する

本ライブラリでは、時間的使用範囲を記述ためにのみ使用している

see gml schema

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(extent) ⇒ Extent

オブジェクトの生成

Parameters:



782
783
784
# File 'lib/when_exe/basictypes.rb', line 782

def initialize(extent)
  @temporal_extent = extent
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(name, *args, &block) ⇒ Object

Note:

When::EX::Extent で定義されていないメソッドは 処理を @temporal_extent (type: When::TM::Period) に委譲する

その他のメソッド



791
792
793
794
795
796
797
798
799
800
# File 'lib/when_exe/basictypes.rb', line 791

def method_missing(name, *args, &block)
  self.class.module_eval %Q{
    def #{name}(*args, &block)
      list = args.map {|arg| arg.kind_of?(self.class) ? arg.temporal_extent : arg}
      @temporal_extent.send("#{name}", *list, &block)
    end
  } unless When::Parts::MethodCash.escape(name)
  list = args.map {|arg| arg.kind_of?(self.class) ? arg.temporal_extent : arg}
  @temporal_extent.send(name, *list, &block)
end

Instance Attribute Details

#temporal_extentWhen::TM::Period (readonly) Also known as: temporalExtent

time periods

時間的使用範囲の上限と下限を示す

Returns:



775
776
777
# File 'lib/when_exe/basictypes.rb', line 775

def temporal_extent
  @temporal_extent
end