Sha256: 513abe0fcec2500a58835f558af281f616b86688700cef705e4c6d5b423432e9

Contents?: true

Size: 582 Bytes

Versions: 7

Compression:

Stored size: 582 Bytes

Contents

# encoding: utf-8

require_relative 'free'
require_relative 'clamped'

# A mixin with place type selectors.
# 
class YPetri::Simulation::Places
  module Types
    # Subset of free places, if any.
    # 
    def free
      ( @Type_free ||= Class.new self.class do
          include Type_free
        end ).load subset( &:free? )
    end

    # Subset of clamped places, if any.
    # 
    def clamped
      ( @Type_clamped ||= Class.new self.class do
          include Type_clamped
        end ).load subset( &:clamped? )
    end
  end # Types
end # class YPetri::Simulation::Places

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
y_petri-2.4.9 lib/y_petri/simulation/places/types.rb
y_petri-2.4.8 lib/y_petri/simulation/places/types.rb
y_petri-2.4.6 lib/y_petri/simulation/places/types.rb
y_petri-2.4.4 lib/y_petri/simulation/places/types.rb
y_petri-2.4.3 lib/y_petri/simulation/places/types.rb
y_petri-2.4.2 lib/y_petri/simulation/places/types.rb
y_petri-2.4.0 lib/y_petri/simulation/places/types.rb