blob: 06b98331d4faed44136b1f992c71537a7eed328f [file] [log] [blame]
require 'dbgp/XmlElement'
require 'debugger/BreakpointContracts'
module XoredDebugger
class BreakpointElement < XmlElement
def initialize(bp)
super('breakpoint')
add_attribute('id', bp.breakpoint_id)
add_attribute('state', bp.state)
add_attribute('hit_value',bp.hit_value)
add_attribute('hit_condition',bp.hit_condition)
add_attribute('hit_count',bp.hit_count)
set_data(bp.expression, true)
# Type specific information
# TODO: Add other brealpoin types handling
if bp.is_a? LineBreakpointContract
add_attribute('type', 'line')
add_attribute('filename', bp.filename)
add_attribute('lineno', bp.lineno)
elsif bp.is_a? ExceptionBreakpointContract
add_attribute('type', 'exception')
add_attribute('exception', bp.exception)
end
end
end
end