def to_settings
    @data ||= Settings.new(settings:        file_contents_hash,
                           namespaces:      namespaces,
                           decryption_keys: decryption_keys,
                           encryption_keys: encryption_keys)
  end
def to_settings
    @data ||= Settings.new(settings:        file_contents_hash,
                           namespaces:      namespaces,
                           decryption_keys: decryption_keys,
                           encryption_keys: encryption_keys)
  end
Internal: Creates a settings file representing a path to a file on the
 filesystem.

 Optionally, namespaces may be passed in which will be passed to the Settings
 object for consideration of which data will be parsed (see the Settings
 object's documentation for details on how this works).

 Examples:

   
   # It can be created by passing namespaces
   
   settings_file = Chamber::File.new path:       '/tmp/settings.yml',
                                     namespaces: {
                                       environment: ENV['RAILS_ENV'] }
   # => <Chamber::File>

   settings_file.to_settings
   # => <Chamber::Settings>

   
   # It can also be created without passing any namespaces
   
   Chamber::File.new path: '/tmp/settings.yml'
   # => <Chamber::File>


 Internal: Extracts the data from the file on disk.  First passing it through
 ERB to generate any dynamic properties and then passing the resulting data
 through YAML.

 Therefore if a settings file contains something like:

 ```erb
 test:
   my_dynamic_value: <%= 1 + 1 %>
 ```

 then the resulting settings object would have:

 ```ruby
 settings[:test][:my_dynamic_value]
 # => 2
 ```