Sha256: 22bf51a5978cf276f1c064df51f736233e197995d287a7329967a9e6929e0043
Contents?: true
Size: 1.67 KB
Versions: 2
Compression:
Stored size: 1.67 KB
Contents
#!/usr/bin/env ruby $: << File.expand_path('lib') require 'cl' module Cast class Bool < Cl::Cmd arg :bool, type: :bool def run p cmd: registry_key, bool: bool end end class Types < Cl::Cmd arg :a, type: :bool arg :b, type: :int arg :c, type: :float arg :d def run p cmd: registry_key, a: a, b: b, c: c, d: d end end end Cl.new($0).run(%w(bool on)) # Output: # # {:cmd=>:bool, :bool=>true} Cl.new($0).run(%w(types true 1 1.2 foo)) # Output: # # {:cmd=>:types, :a=>true, :b=>1, :c=>1.2, :d=>"foo"} Cl.new($0).run(%w(types true 1 1.2 foo bar)) # Output: # # Too many arguments: true 1 1.2 foo bar (given: 5, allowed: 4) # # Usage: bin/examples types [a:bool] [b:int] [c:float] [d] [options] # # Arguments: # # a type: bool # b type: int # c type: float # d type: string # # Options: # # --help Get help on this command Cl.new($0).run(%w(types true one 1.2)) # Output: # # Wrong argument type (given: "one", expected: int) # # Usage: bin/examples types [a:bool] [b:int] [c:float] [d] [options] # # Arguments: # # a type: bool # b type: int # c type: float # d type: string # # Options: # # --help Get help on this command Cl.new($0).run(%w(types true 1 one)) # Output: # # Wrong argument type (given: "one", expected: float) # # Usage: bin/examples types [a:bool] [b:int] [c:float] [d] [options] # # Arguments: # # a type: bool # b type: int # c type: float # d type: string # # Options: # # --help Get help on this command
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
cl-1.2.2 | examples/args/cast |
cl-1.2.1 | examples/args/cast |