Exception: XlibObj::Error
- Inherits:
-
StandardError
- Object
- StandardError
- XlibObj::Error
- Defined in:
- lib/error.rb
Instance Attribute Summary collapse
-
#error_code ⇒ Object
readonly
Returns the value of attribute error_code.
-
#minor_code ⇒ Object
readonly
Returns the value of attribute minor_code.
-
#request_code ⇒ Object
readonly
Returns the value of attribute request_code.
-
#resourceid ⇒ Object
readonly
Returns the value of attribute resourceid.
Instance Method Summary collapse
- #description ⇒ Object (also: #message)
- #error_description ⇒ Object
-
#initialize(display, error) ⇒ Error
constructor
A new instance of Error.
- #major_request_description ⇒ Object
- #minor_request_description ⇒ Object
- #request_description ⇒ Object
- #resource_description ⇒ Object
Constructor Details
#initialize(display, error) ⇒ Error
Returns a new instance of Error.
11 12 13 14 15 16 17 |
# File 'lib/error.rb', line 11 def initialize(display, error) @display = display @error_code = error[:error_code] @request_code = error[:request_code] @minor_code = error[:minor_code] @resourceid = error[:resourceid] end |
Instance Attribute Details
#error_code ⇒ Object (readonly)
Returns the value of attribute error_code.
19 20 21 |
# File 'lib/error.rb', line 19 def error_code @error_code end |
#minor_code ⇒ Object (readonly)
Returns the value of attribute minor_code.
19 20 21 |
# File 'lib/error.rb', line 19 def minor_code @minor_code end |
#request_code ⇒ Object (readonly)
Returns the value of attribute request_code.
19 20 21 |
# File 'lib/error.rb', line 19 def request_code @request_code end |
#resourceid ⇒ Object (readonly)
Returns the value of attribute resourceid.
19 20 21 |
# File 'lib/error.rb', line 19 def resourceid @resourceid end |
Instance Method Details
#description ⇒ Object Also known as: message
21 22 23 24 25 |
# File 'lib/error.rb', line 21 def description "#{request_description}\n" << "Error: #{error_description}\n" << "Resource: #{resource_description}" end |
#error_description ⇒ Object
49 50 51 52 53 54 55 |
# File 'lib/error.rb', line 49 def error_description = 256 = FFI::MemoryPointer.new(:char, ) Xlib.XGetErrorDatabaseText(@display.to_native, 'XProtoError', "#{@error_code}", "Error code #{@error_code}", , ) .read_string end |
#major_request_description ⇒ Object
32 33 34 35 36 37 38 |
# File 'lib/error.rb', line 32 def major_request_description = 256 = FFI::MemoryPointer.new(:char, ) Xlib.XGetErrorDatabaseText(@display.to_native, 'XRequest', "#{@request_code}", "Major code #{@request_code}", , ) .read_string end |
#minor_request_description ⇒ Object
40 41 42 43 44 45 46 47 |
# File 'lib/error.rb', line 40 def minor_request_description = 256 = FFI::MemoryPointer.new(:char, ) extension = @display.extensions.find{ |ext| ext.opcode == @request_code } Xlib.XGetErrorDatabaseText(@display.to_native, "XRequest.#{extension.name}", "#{@minor_code}", "Minor code #{@minor_code}", , ) "#{extension.name} #{.read_string}" end |
#request_description ⇒ Object
28 29 30 |
# File 'lib/error.rb', line 28 def request_description @request_code < 128 ? major_request_description : minor_request_description end |
#resource_description ⇒ Object
57 58 59 |
# File 'lib/error.rb', line 57 def resource_description @resourceid end |