Module: Kwartz::ConverterHelper
Overview
helper module for Converter and Handler
Handler and Converter class include this module.
Instance Method Summary collapse
- #_last_stmt_kind(stmt_list) ⇒ Object
-
#convert_error(message, linenum) ⇒ Object
return ConvertError.
-
#error_if_empty_tag(handler_arg) ⇒ Object
raise errror if etag_info is null.
- #error_when_last_stmt_is_not_if(stmt_list, handler_arg) ⇒ Object
-
#include_properties(properties) ⇒ Object
set @despan and @dattr.
Instance Method Details
#_last_stmt_kind(stmt_list) ⇒ Object
267 268 269 270 271 272 |
# File 'lib/kwartz/converter.rb', line 267 def _last_stmt_kind(stmt_list) return nil if stmt_list.nil? || stmt_list.empty? stmt = stmt_list.last return nil unless stmt.is_a?(NativeStatement) return stmt.kind end |
#convert_error(message, linenum) ⇒ Object
return ConvertError
236 237 238 |
# File 'lib/kwartz/converter.rb', line 236 def convert_error(, linenum) return ConvertError.new(, @filename, linenum) end |
#error_if_empty_tag(handler_arg) ⇒ Object
raise errror if etag_info is null
242 243 244 245 246 247 248 249 250 |
# File 'lib/kwartz/converter.rb', line 242 def error_if_empty_tag(handler_arg) arg = handler_arg unless arg.etag_info d_name = arg.directive_name d_str = arg.directive_str msg = "'#{d_str}': #{d_name} directive is not available with empty tag." raise convert_error(msg, arg.stag_info.linenum) end end |
#error_when_last_stmt_is_not_if(stmt_list, handler_arg) ⇒ Object
253 254 255 256 257 258 259 260 261 |
# File 'lib/kwartz/converter.rb', line 253 def error_when_last_stmt_is_not_if(stmt_list, handler_arg) kind = _last_stmt_kind(stmt_list) unless kind == :if || kind == :elseif d_str = handler_arg.directive_str linenum = handler_arg.stag_info.linenum msg = "'#{d_str}': previous statement should be 'if' or 'elsif'." raise convert_error(msg, linenum) end end |
#include_properties(properties) ⇒ Object
set @despan and @dattr
229 230 231 232 |
# File 'lib/kwartz/converter.rb', line 229 def include_properties(properties) @dattr = properties[:dattr] || Config::PROPERTY_DATTR # default: 'kw:d' @delspan = properties.key?(:delspan) ? properties[:delspan] : Config::PROPERTY_DELSPAN # delete dummy <span> tag or not end |