Class: Hash

### Home Classes Methods

### In Files

- lib/toml/monkey_patch.rb

### Parent

Object

### Methods

- #to_toml

### Files

- LICENSE

### Class/Module Index

Quicksearch

- TOML
- TOML::Generator
- TOML::Key
- TOML::Parser
- TOML::Parslet
- TOML::Table
- TOML::TableArray
- TOML::Transformer
- Array
- DateTime
- FalseClass
- Hash
- Numeric
- Object
- String
- TrueClass

No matching classes.

# Hash

### Public Instance Methods

to_toml(path = "") click to toggle source

    # File lib/toml/monkey_patch.rb, line 11
    def to_toml(path = "")
      return "" if self.empty?

      tables = {}
      values = {}
      self.keys.sort.each do |key|
        val = self[key]
        if val.kind_of?(NilClass)
          next
        elsif val.toml_table? || val.toml_table_array?
          tables[key] = val
        else
          values[key] = val
        end
      end

      toml = ""
      values.each do |key, val|
        toml << "#{key} = #{val.to_toml(key)}\n"
      end

      tables.each do |key, val|
        key = "#{path}.#{key}" unless path.empty?
        toml_val = val.to_toml(key)
        unless toml_val.empty?
          if val.toml_table?
            non_table_vals = val.values.reject do |v|
              v.toml_table? || v.toml_table_array?
            end

            # Only add the table key if there are non table values.
            if non_table_vals.length > 0
              toml << "\n[#{key}]\n"
            end
          end
          toml << toml_val
        end
      end

      toml
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.