Class: RBS::UnitTest::WithAliases::WithEnum
- Inherits:
-
Object
- Object
- RBS::UnitTest::WithAliases::WithEnum
- Includes:
- Enumerable, Enumerable[T]
- Defined in:
- lib/rbs/unit_test/with_aliases.rb,
sig/unit_test/with_aliases.rbs
Instance Method Summary collapse
-
#and(*args, &block) ⇒ Object
Yield objects in
argsin addition to originalenumelements. -
#and_nil {|arg0| ... } ⇒ Object
Yield
nilin addition to originalenumelements. -
#but(*cases) {|arg0| ... } ⇒ Object
Skip yielding objects in
cases. - #each {|arg0| ... } ⇒ void
-
#initialize(enum) ⇒ WithEnum
constructor
A new instance of WithEnum.
Methods included from Enumerable
Constructor Details
#initialize(enum) ⇒ WithEnum
Returns a new instance of WithEnum.
11 |
# File 'lib/rbs/unit_test/with_aliases.rb', line 11 def initialize(enum) = @enum = enum |
Instance Method Details
#and ⇒ void #and ⇒ void
62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'sig/unit_test/with_aliases.rbs', line 62 def and(*args, &block) return WithEnum.new to_enum(__method__ || raise, *args) unless block each(&block) args.each do |arg| if WithEnum === arg # use `===` as `arg` might not have `.is_a?` on it arg.each(&block) else block.call(_ = arg) end end end |
#and_nil ⇒ void #and_nil ⇒ WithEnum[T?]
38 39 40 |
# File 'sig/unit_test/with_aliases.rbs', line 38 def and_nil(&block) self.and(nil, &_ = block) end |
#but(cases) ⇒ void #but(cases) ⇒ WithEnum[T]
50 51 52 53 54 55 56 |
# File 'sig/unit_test/with_aliases.rbs', line 50 def but(*cases, &block) return WithEnum.new to_enum(__method__ || raise, *cases) unless block each do |arg| yield arg unless cases.any? { (_ = _1) === arg } end end |
#each {|arg0| ... } ⇒ void
This method returns an undefined value.
13 |
# File 'lib/rbs/unit_test/with_aliases.rb', line 13 def each(&block) = @enum.each(&block) |