Class Kwalify::Yaml::Parser
In: lib/kwalify/parser/yaml.rb
Parent: Kwalify::BaseParser

YAML parser with validator

ex.

  schema = YAML.load_file('schema.yaml')
  require 'kwalify'
  validator = Kwalify::Validator.new(schema)
  parser = Kwalify::Yaml::Parser.new(validator)  # validator is optional
  #parser.preceding_alias = true  # optional
  #parser.data_binding = true     # optional
  ydoc = parser.parse_file('data.yaml')
  errors = parser.errors
  if errors && !errors.empty?
    errors.each do |e|
      puts "line=#{e.linenum}, path=#{e.path}, mesg=#{e.message}"
    end
  end

Methods

Constants

PRECEDING_ALIAS_PLACEHOLDER = Object.new # :nodoc:

External Aliases

reset -> reset_scanner

Attributes

data_binding  [RW] 
errors  [R] 
mapping_class  [RW] 
preceding_alias  [RW] 
sequence_class  [RW] 
validator  [RW] 

Public Class methods

Public Instance methods

def _validate_error(message, path, linenum=@linenum, column=@column)

  #message = _build_message(message_key)
  error = _error(ValidationError, message.to_s, path, linenum, column)
  @errors << error

end private :_validate_error

parse_documents(input, opts={}, &block)

Alias for parse_stream

Protected Instance methods

[Validate]