ConfigValue

An immutable value, following the JSON type
schema.
Because this object is immutable, it is safe to use from multiple threads and
there's no need for "defensive copies."
Do not implement interface ConfigValue; it should only be
implemented by the config library. Arbitrary implementations will not work
because the library internals assume a specific concrete implementation.
Also, this interface is likely to grow new methods over time, so third-party
implementations will break.
class Object
trait Matchable
class Any

Value members

Methods

The origin of the value (file, line number, etc.), for debugging and
error messages.
Returns
where the value came from
The [[ConfigValueType]] of the value; matches the JSON type schema.
Returns
value's type
def unwrapped: AnyRef
Returns the value as a plain Java boxed value, that is, a String,
Number, Boolean, Map<String,Object>,
List, or null, matching the [[#valueType]]
of this ConfigValue. If the value is a [[ConfigObject]] or
[[ConfigList]], it is recursively unwrapped.
Returns
a plain Java value corresponding to this ConfigValue
def render: String
Renders the config value as a HOCON string. This method is primarily
intended for debugging, so it tries to add helpful comments and
whitespace.
If the config value has not been resolved
(see Config.resolve()),
it's possible that it can't be rendered as valid HOCON. In that case the
rendering should still be useful for debugging but you might not be able
to parse it. If the value has been resolved, it will always be parseable.
This method is equivalent to
render(ConfigRenderOptions.defaults()).
Returns
the rendered value
def render(options: ConfigRenderOptions): String
Renders the config value to a string, using the provided options.
If the config value has not been resolved
(see [Config.resolve()),
it's possible that it can't be rendered as valid HOCON. In that case the
rendering should still be useful for debugging but you might not be able
to parse it. If the value has been resolved, it will always be parseable.
If the config value has been resolved and the options disable all
HOCON-specific features (such as comments), the rendering will be valid
JSON. If you enable HOCON-only features such as comments, the rendering
will not be valid JSON.
Value Params
options
the rendering options
Returns
the rendered value
Definition Classes
def atPath(path: String): Config
Places the value inside a [[Config]] at the given path. See also
[[ConfigValue#atKey]].
Value Params
path
path to store this value at.
Returns
a Config instance containing this value at the given
path.
def atKey(key: String): Config
Places the value inside a [[Config]] at the given key. See also
[[ConfigValue#atPath]].
Value Params
key
key to store this value at.
Returns
a Config instance containing this value at the given key.
Returns a ConfigValue based on this one, but with the given
origin. This is useful when you are parsing a new format of file or setting
comments for a single ConfigValue.
Value Params
origin
the origin set on the returned value
Returns
the new ConfigValue with the given origin
Since
1.3.0