module Lino::Options

Public Instance Methods

with_flag(flag) click to toggle source
# File lib/lino/options.rb, line 60
def with_flag(flag)
  return self if nil?(flag)

  with(options: @options.add({ components: [flag] }))
end
with_flags(flags) click to toggle source
# File lib/lino/options.rb, line 66
def with_flags(flags)
  return self if nil_or_empty?(flags)

  flags.inject(self) { |s, flag| s.with_flag(flag) }
end
with_option( option, value, separator: nil, quoting: nil, placement: nil ) click to toggle source
# File lib/lino/options.rb, line 9
def with_option(
  option,
  value,
  separator: nil,
  quoting: nil,
  placement: nil
)
  return self if nil?(value)

  with(options: @options.add(
    {
      components: [option, value],
      separator: separator,
      quoting: quoting,
      placement: placement
    }
  ))
end
with_options(options) click to toggle source
# File lib/lino/options.rb, line 28
def with_options(options)
  return self if nil_or_empty?(options)

  options.entries.inject(self) do |s, entry|
    s.with_option(
      or_nth(entry, :option, 0),
      or_nth(entry, :value, 1),
      separator: or_nil(entry, :separator),
      quoting: or_nil(entry, :quoting),
      placement: or_nil(entry, :placement)
    )
  end
end
with_repeated_option( option, values, separator: nil, quoting: nil, placement: nil ) click to toggle source
# File lib/lino/options.rb, line 42
def with_repeated_option(
  option,
  values,
  separator: nil,
  quoting: nil,
  placement: nil
)
  values.inject(self) do |s, value|
    s.with_option(
      option,
      value,
      separator: separator,
      quoting: quoting,
      placement: placement
    )
  end
end