Class: MiniMagick::CommandBuilder
- Inherits:
-
Object
- Object
- MiniMagick::CommandBuilder
- Defined in:
- lib/mini_magick.rb
Instance Attribute Summary collapse
-
#args ⇒ Object
readonly
Returns the value of attribute args.
Instance Method Summary collapse
- #+(*options) ⇒ Object
- #add_command(command, *options) ⇒ Object
- #add_creation_operator(command, *options) ⇒ Object
- #command ⇒ Object
- #escape_string(value) ⇒ Object
- #format(*options) ⇒ Object
-
#initialize(tool, *options) ⇒ CommandBuilder
constructor
A new instance of CommandBuilder.
- #push(arg) ⇒ Object (also: #<<)
Constructor Details
#initialize(tool, *options) ⇒ CommandBuilder
Returns a new instance of CommandBuilder.
450 451 452 453 454 |
# File 'lib/mini_magick.rb', line 450 def initialize(tool, *) @tool = tool @args = [] .each { |arg| push(arg) } end |
Instance Attribute Details
#args ⇒ Object (readonly)
Returns the value of attribute args.
448 449 450 |
# File 'lib/mini_magick.rb', line 448 def args @args end |
Instance Method Details
#+(*options) ⇒ Object
492 493 494 495 496 497 498 499 |
# File 'lib/mini_magick.rb', line 492 def +(*) push(@args.pop.gsub(/^-/, '+')) if .any? .each do |o| push escape_string(o) end end end |
#add_command(command, *options) ⇒ Object
501 502 503 504 505 506 507 508 |
# File 'lib/mini_magick.rb', line 501 def add_command(command, *) push "-#{command}" if .any? .each do |o| push escape_string(o) end end end |
#add_creation_operator(command, *options) ⇒ Object
514 515 516 517 518 519 520 521 522 |
# File 'lib/mini_magick.rb', line 514 def add_creation_operator(command, *) creation_command = command if .any? .each do |option| creation_command << ":#{option}" end end push creation_command end |
#command ⇒ Object
456 457 458 |
# File 'lib/mini_magick.rb', line 456 def command "#{MiniMagick.processor} #{@tool} #{@args.join(' ')}".strip end |
#escape_string(value) ⇒ Object
510 511 512 |
# File 'lib/mini_magick.rb', line 510 def escape_string(value) Shellwords.escape(value.to_s) end |
#format(*options) ⇒ Object
481 482 483 |
# File 'lib/mini_magick.rb', line 481 def format(*) raise Error, "You must call 'format' on the image object directly!" end |
#push(arg) ⇒ Object Also known as: <<
524 525 526 |
# File 'lib/mini_magick.rb', line 524 def push(arg) @args << arg.to_s.strip end |