Sha256: 2fb8446af3fbc6d83156efa0cd8ce32d9cd170f7184439340b1512dbe55cdbd8
Contents?: true
Size: 715 Bytes
Versions: 2
Compression:
Stored size: 715 Bytes
Contents
require_relative "./collection_filter" class ReeDto::DtoCollection include Enumerable extend Forwardable def_delegators *([:@list] + Array.public_instance_methods - Object.public_instance_methods) LoadError = Class.new(ArgumentError) attr_reader :name, :contract, :parent_class contract Symbol, Any, Any => Any def initialize(name, contract, parent_class) @parent_class = parent_class @contract = contract @name = name @list = [] end contract Optblock => Any def each(&block) @list.each(&block) end class << self def filter(name, filter_proc) define_method name do ReeDto::CollectionFilter.new(self, name, filter_proc) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ree_lib-1.0.115 | lib/ree_lib/packages/ree_dto/package/ree_dto/dto/dto_collection.rb |
ree_lib-1.0.114 | lib/ree_lib/packages/ree_dto/package/ree_dto/dto/dto_collection.rb |