class Aio::Module::InputStyle::Console::ContextState
Public Instance Methods
parse_line(line)
click to toggle source
# File lib/modules/input/style/console.rb, line 138 def parse_line(line) # 如果这行是命令行格式,那么就代表上一个cmd内容结束 # 如果这里出问题,关注 CmdState tmp_reg = ::Regexp.new "^[\\[|<]?#{cmd_context.device_name}[#|>|\\]]{1}" # 可能会出现UTF-8识别不出摄氏度符号的问题 # 已经通过安全字符解决 begin if tmp_reg.match(line) cmd_context.done # 完成后将状态设置为空,并且重新分析这一行 # 毕竟如果这行也cmd行呢 @machine.to_empty_state return @machine.parse_line(line) end rescue => e print_error cmd_context.device_name + " 设备巡检信息编码出现问题" print_error line + " : " + e.message end cmd_context.context << line end