Method: Win::Library#generate_snake_method_body
- Defined in:
- lib/win/library.rb
#generate_snake_method_body(api, options, &def_block) ⇒ Object
Generates body for snake_case method according to directives contained in options options (:boolean, :fails) currently supported
404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 |
# File 'lib/win/library.rb', line 404 def generate_snake_method_body(api, , &def_block) if def_block if [:fails] ->(*args, &block){ (res = def_block.(api, *args, &block)) == [:fails] ? nil: res } elsif [:boolean] ->(*args, &block){ def_block.(api, *args, &block) != 0 } else ->(*args, &block){ def_block.(api, *args, &block) } end else if [:fails] ->(*args, &block){ (res = block ? block[api.call(*args)] : api.call(*args)) == [:fails] ? nil : res } elsif [:boolean] ->(*args, &block){ block ? block[api.call(*args)] : api.call(*args) != 0 } else ->(*args, &block){ block ? block[api.call(*args)] : api.call(*args) } end end end |