# File lib/kwartz/parser.rb, line 796
    def parse_import_command
      c = @ch
      c = getch() while is_whitespace(c)
      t = scan_string()
      t == :string  or raise parse_error("@import: requires filename.")
      filename = @value
      if @filename && !@filename.empty?
        dir = File.dirname(@filename)
        filename = dir + '/' + filename if dir != '.'
      end
      test(?f, filename)  or raise parse_error("'#{filename}': import file not found.")
      _linenum, _column = @linenum, @column
      c = @ch
      c = getch() while is_whitespace(c)
      c == ?; or raise parse_error("';' required.")
      c = getch()
      scan()
      parser = self.class.new(@properties)
      begin
        ruleset_list = parser.parse(File.read(filename), filename)
      rescue => ex
        parse_error(ex.message, _linenum, _column)
      end
      return ruleset_list
    end