code: def _options(mapping):
      for k, v in mapping.items():
          # None or False arguments are ignored
          # v needs to be explicitly False, not falsy, e.g. 0 is an acceptable value
          if v is None or v is False:
              continue
  
          # we need special handling for 'with' since it is a reserved
          # keyword in Python, so we call it 'decospecs' in click args
          if k == "decospecs":
              k = "with"
          k = k.replace("_", "-")
          v = v if isinstance(v, (list, tuple, set)) else [v]
          for value in v:
              yield "--%s" % k
              if not isinstance(value, bool):
                  yield to_unicode(value)
  
file_path: metaflow/metaflow/cli_args.py
imports: from .util import to_unicode
label_desc: Use image node_id 7 for calling the CLIArgs obj's underlying member method code with example usage: obj._options(mapping) without return types