Sha256: e004694f91104ef67dec2f72aa9ff18a9344df110002a9f4325e7c97c6b8f641

Contents?: true

Size: 802 Bytes

Versions: 1

Compression:

Stored size: 802 Bytes

Contents

module System

  class Type

    # collects all the methods defined on an interface and its parents
    def collect_interface_methods
      iface_methods = []
      iface_methods += self.get_interfaces.collect { |t| t.collect_interface_methods }
      self.get_methods + iface_methods.flatten
    end

    # collects the properties defined on an interface an its parents
    def collect_interface_properties
      iface_properties = []
      iface_properties += self.get_interfaces.collect { |t| t.collect_interface_properties }
      self.get_properties + iface_properties.flatten
    end

    def collect_interface_events
      iface_events = []
      iface_events += self.get_interfaces.collect { |t| t.collect_interface_events }
      self.get_events + iface_events.flatten.uniq
    end

  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
caricature-0.7.7 lib/caricature/core_ext/system/type.rb