def check_absorption!
      count, greedy = count_expected

      return unless strict?

      raise GreedyAbsorptionError.new(count, @args.size) if count >= @args.size && greedy
      raise AbsorptionError.new(count, @args.size) if count != @args.size && !greedy
    end
def check_absorption!
      count, greedy = count_expected

      return unless strict?

      raise GreedyAbsorptionError.new(count, @args.size) if count >= @args.size && greedy
      raise AbsorptionError.new(count, @args.size) if count != @args.size && !greedy
    end
Check whether the expected arguments absorb all supplied arguments.
 @raise [AbsoptionError] if absorption fails and {strict?} is not true
 @api private