Sha256: a5e8e00dd72e943ef61e48f40f9ef3051aa098ced72c2faeb61201960315fe79

Contents?: true

Size: 1.84 KB

Versions: 1

Compression:

Stored size: 1.84 KB

Contents

require_relative "../init"

module TOML

  # Public: Returns a hash from *TOML* content.
  #
  # content - TOML string to be parsed.
  # options - The Hash options used to refine the parser (default: {}):
  #           :symbolize_keys - true|false (optional).
  #
  #
  # Examples
  #
  #   TOML.parse('[group]')
  #   # => {"group"=>{}}
  #
  #   TOML.parse('title = "TOML parser"')
  #   # => {"title"=>"TOML parser"}
  #
  #   TOML.parse('[group]', symbolize_keys: true)
  #   # => {group: {}}
  #
  #   TOML.parse('title = "TOML parser"', symbolize_keys: true)
  #   # => {title: "TOML parser"}
  #
  #
  # Returns a Ruby hash representation of the content according to TOML spec.
  # Raises ValueOverwriteError if a key is overwritten
  def self.parse(content, options = {})
    Parser.new(content, options).hash
  end

  # Public: Returns a hash from a *TOML* file.
  #
  # path    - TOML File path
  # options - The Hash options used to refine the parser (default: {}):
  #           :symbolize_keys - true|false (optional).
  #
  #
  # Examples
  #
  #   TOML.load_file('/tmp/simple.toml')
  #   # => {"group"=>{}}
  #
  #   TOML.load_file('/tmp/simple.toml', symbolize_keys: true)
  #   # => {group: {}}
  #
  #
  # Returns a Ruby hash representation of the content.
  # Raises ValueOverwriteError if a key is overwritten
  # Raises Errno::ENOENT if the file cannot be found.
  # Raises Errno::EACCES if the file cannot be accessed.
  def self.load_file(path, options = {})
    TOML.parse(File.read(path), options)
  end


  # Public: Returns a *TOML* string from a Ruby Hash.
  #
  # hash - Ruby Hash to be dumped into *TOML*
  #
  #
  # Examples
  #
  #   TOML.dump({title: "TOML dump"})
  #   # => TODO:
  #
  #   TOML.parse('title = "TOML parser"')
  #   # => 
  #
  #
  # Returns a TOML string representing the hash.
  def self.dump(hash)
    Dumper.new(hash)
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
toml-rb-0.1.2 lib/toml.rb