Class: Cmds::Result

Inherits:
Object
  • Object
show all
Defined in:
lib/cmds/result.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(cmd, status, out, err) ⇒ Result

Returns a new instance of Result.



5
6
7
8
9
10
# File 'lib/cmds/result.rb', line 5

def initialize cmd, status, out, err
  @cmd = cmd
  @status = status
  @out = out
  @err = err
end

Instance Attribute Details

#cmdObject (readonly)

Returns the value of attribute cmd.



3
4
5
# File 'lib/cmds/result.rb', line 3

def cmd
  @cmd
end

#errObject (readonly)

Returns the value of attribute err.



3
4
5
# File 'lib/cmds/result.rb', line 3

def err
  @err
end

#outObject (readonly)

Returns the value of attribute out.



3
4
5
# File 'lib/cmds/result.rb', line 3

def out
  @out
end

#statusObject (readonly)

Returns the value of attribute status.



3
4
5
# File 'lib/cmds/result.rb', line 3

def status
  @status
end

Instance Method Details

#assertObject

raises an error if there was one returns the Result so that it can be chained



22
23
24
25
26
27
28
29
30
31
32
# File 'lib/cmds/result.rb', line 22

def assert
  if error?
    msg = NRSER.squish "      command `\#{ @cmd }` exited with status \#{ @status }\n      and stderr \#{ err.inspect }\n    BLOCK\n\n    raise SystemCallError.new msg, @status\n  end\n  self\nend\n"

#error?Boolean

Returns:

  • (Boolean)


16
17
18
# File 'lib/cmds/result.rb', line 16

def error?
  ! ok?
end

#ok?Boolean

Returns:

  • (Boolean)


12
13
14
# File 'lib/cmds/result.rb', line 12

def ok?
  @status == 0
end