org.ekrich.config.impl
Members list
Type members
Classlikes
Attributes
- Supertypes
- Known subtypes
-
class AbstractConfigNodeValueclass ConfigNodeComplexValueclass ConfigNodeArrayclass ConfigNodeConcatenationclass ConfigNodeObjectclass ConfigNodeRootclass ConfigNodeSimpleValueclass ConfigNodeFieldclass ConfigNodeIncludeclass ConfigNodePathclass ConfigNodeSingleTokenclass ConfigNodeCommentShow all
Attributes
- Supertypes
- Known subtypes
-
class ConfigNodeComplexValueclass ConfigNodeArrayclass ConfigNodeConcatenationclass ConfigNodeObjectclass ConfigNodeRootclass ConfigNodeSimpleValueShow all
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
AbstractConfigObject.type
Attributes
- Companion
- object
- Supertypes
-
trait Containertrait ConfigObjectclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
class ConfigDelayedMergeObjectclass SimpleConfigObject
Trying very hard to avoid a parent reference in config values; when you have a tree like this, the availability of parent() tends to result in a lot of improperly-factored and non-modular code. Please don't add parent().
Trying very hard to avoid a parent reference in config values; when you have a tree like this, the availability of parent() tends to result in a lot of improperly-factored and non-modular code. Please don't add parent().
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
AbstractConfigValue.type
Attributes
- Companion
- object
- Supertypes
-
trait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
class AbstractConfigObjectclass ConfigDelayedMergeObjectclass SimpleConfigObjectclass ConfigBooleanclass ConfigConcatenationclass ConfigDelayedMergeclass ConfigNullclass ConfigNumberclass ConfigDoubleclass ConfigIntclass ConfigLongclass ConfigReferenceclass ConfigStringclass SerializedConfigValueclass SimpleConfigListShow all
A terrible Map that isn't as expensive as HashMap to copy and add one item to. Please write something real if you see this and get cranky.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Internal implementation detail, not ABI stable, do not touch. For use only by the org.ekrich.config package.
Internal implementation detail, not ABI stable, do not touch. For use only by the org.ekrich.config package.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ConfigBeanImpl.type
Attributes
- Supertypes
-
trait Serializableclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
A ConfigConcatenation represents a list of values to be concatenated (see the spec). It only has to exist if at least one value is an unresolved substitution, otherwise we could go ahead and collapse the list into a single value.
A ConfigConcatenation represents a list of values to be concatenated (see the spec). It only has to exist if at least one value is an unresolved substitution, otherwise we could go ahead and collapse the list into a single value.
Right now this is always a list of strings and ${} references, but in the future should support a list of ConfigList. We may also support concatenations of objects, but ConfigDelayedMerge should be used for that since a concat of objects really will merge, not concatenate.
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ConfigConcatenation.type
Attributes
- Companion
- object
- Supertypes
-
trait Containertrait Unmergeableclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
The issue here is that we want to first merge our stack of config files, and then we want to evaluate substitutions. But if two substitutions both expand to an object, we might need to merge those two objects. Thus, we can't ever "override" a substitution when we do a merge; instead we have to save the stack of values that should be merged, and resolve the merge when we evaluate substitutions.
The issue here is that we want to first merge our stack of config files, and then we want to evaluate substitutions. But if two substitutions both expand to an object, we might need to merge those two objects. Thus, we can't ever "override" a substitution when we do a merge; instead we have to save the stack of values that should be merged, and resolve the merge when we evaluate substitutions.
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ConfigDelayedMerge.type
Attributes
- Companion
- object
- Supertypes
-
trait ReplaceableMergeStacktrait Containertrait Unmergeableclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
Attributes
- Companion
- object
- Supertypes
-
trait ReplaceableMergeStacktrait Unmergeableclass AbstractConfigObjecttrait Containertrait ConfigObjectclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ConfigDocumentParser.type
Attributes
- Supertypes
-
class ConfigNumbertrait Serializableclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
Internal implementation detail, not ABI stable, do not touch. For use only by the org.ekrich.config package.
Internal implementation detail, not ABI stable, do not touch. For use only by the org.ekrich.config package.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ConfigImpl.type
Internal implementation detail, not ABI stable, do not touch. For use only by the org.ekrich.config package.
Internal implementation detail, not ABI stable, do not touch. For use only by the org.ekrich.config package.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ConfigImplUtil.type
Attributes
- Supertypes
-
trait Enumtrait Producttrait Equalsclass Enum[ConfigIncludeKind]trait Serializabletrait Comparable[ConfigIncludeKind]trait Constableclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class ConfigNumbertrait Serializableclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class ConfigNumbertrait Serializableclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class ConfigNodeComplexValueclass AbstractConfigNodeValueclass AbstractConfigNodetrait ConfigNodeclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class ConfigNodeSingleTokenclass AbstractConfigNodetrait ConfigNodeclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class AbstractConfigNodeValueclass AbstractConfigNodetrait ConfigNodeclass Objecttrait Matchableclass AnyShow all
- Known subtypes
Attributes
- Supertypes
-
class ConfigNodeComplexValueclass AbstractConfigNodeValueclass AbstractConfigNodetrait ConfigNodeclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
Attributes
- Supertypes
Attributes
- Supertypes
-
class ConfigNodeComplexValueclass AbstractConfigNodeValueclass AbstractConfigNodetrait ConfigNodeclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
Attributes
- Supertypes
-
class ConfigNodeComplexValueclass AbstractConfigNodeValueclass AbstractConfigNodetrait ConfigNodeclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class AbstractConfigNodeValueclass AbstractConfigNodetrait ConfigNodeclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
- Known subtypes
-
class ConfigNodeComment
This exists because sometimes null is not the same as missing. Specifically, if a value is set to null we can give a better error message (indicating where it was set to null) in case someone asks for the value. Also, null overrides values set "earlier" in the search path, while missing values do not.
This exists because sometimes null is not the same as missing. Specifically, if a value is set to null we can give a better error message (indicating where it was set to null) in case someone asks for the value. Also, null overrides values set "earlier" in the search path, while missing values do not.
Attributes
- Supertypes
-
trait Serializableclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ConfigNumber.type
Attributes
- Companion
- object
- Supertypes
-
trait Serializableclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
- Known subtypes
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ConfigParser.type
ConfigReference replaces ConfigReference (the older class kept for back compat) and represents the ${} substitution syntax. It can resolve to any kind of value.
ConfigReference replaces ConfigReference (the older class kept for back compat) and represents the ${} substitution syntax. It can resolve to any kind of value.
Attributes
- Supertypes
-
trait Unmergeableclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ConfigString.type
Attributes
- Companion
- object
- Supertypes
-
trait Serializableclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
An AbstractConfigValue which contains other values. Java has no way to express "this has to be an AbstractConfigValue also" other than making AbstractConfigValue an interface which would be aggravating. But we can say we are a ConfigValue.
An AbstractConfigValue which contains other values. Java has no way to express "this has to be an AbstractConfigValue also" other than making AbstractConfigValue an interface which would be aggravating. But we can say we are a ConfigValue.
Attributes
- Supertypes
- Known subtypes
-
class AbstractConfigObjectclass ConfigDelayedMergeObjectclass SimpleConfigObjectclass ConfigConcatenationtrait ReplaceableMergeStackclass ConfigDelayedMergeclass SimpleConfigListShow all
Default automatic type transformations.
Default automatic type transformations.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
DefaultTransformer.type
Attributes
- Supertypes
-
trait Enumtrait Producttrait Equalsclass Enum[FromMapMode]trait Serializabletrait Comparable[FromMapMode]trait Constableclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait ConfigIncluderClasspathtrait ConfigIncluderURLtrait ConfigIncluderFiletrait ConfigIncluderclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
class SimpleIncluder
The key used to memoize already-traversed nodes when resolving substitutions
The key used to memoize already-traversed nodes when resolving substitutions
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
-
trait Enumtrait Producttrait Equalsclass Enum[MemoryUnit]trait Serializabletrait Comparable[MemoryUnit]trait Constableclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
- Known subtypes
-
class AbstractConfigValueclass AbstractConfigObjectclass ConfigDelayedMergeObjectclass SimpleConfigObjectclass ConfigBooleanclass ConfigConcatenationclass ConfigDelayedMergeclass ConfigNullclass ConfigNumberclass ConfigDoubleclass ConfigIntclass ConfigLongclass ConfigReferenceclass ConfigStringclass SerializedConfigValueclass SimpleConfigListclass SimpleConfigShow all
Attributes
- Supertypes
-
trait Enumtrait Producttrait Equalsclass Enum[OriginType]trait Serializabletrait Comparable[OriginType]trait Constableclass Objecttrait Matchableclass AnyShow all
Internal implementation detail, not ABI stable, do not touch. For use only by the org.ekrich.config package. The point of this class is to avoid "propagating" each overload on "thing which can be parsed" through multiple interfaces. Most interfaces can have just one overload that takes a Parseable. Also it's used as an abstract "resource handle" in the ConfigIncluder interface.
Internal implementation detail, not ABI stable, do not touch. For use only by the org.ekrich.config package. The point of this class is to avoid "propagating" each overload on "thing which can be parsed" through multiple interfaces. Most interfaces can have just one overload that takes a Parseable. Also it's used as an abstract "resource handle" in the ConfigIncluder interface.
Attributes
Attributes
- Companion
- object
- Supertypes
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
PathParser.type
To workaround missing implementations
To workaround missing implementations
Attributes
- Supertypes
To workaround missing implementations in Scala.js and Scala Native
To workaround missing implementations in Scala.js and Scala Native
Attributes
- Supertypes
To workaround missing implementations
To workaround missing implementations
Attributes
- Supertypes
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
PropertiesParser.type
Implemented by a merge stack (ConfigDelayedMerge, ConfigDelayedMergeObject) that replaces itself during substitution resolution in order to implement "look backwards only" semantics.
Implemented by a merge stack (ConfigDelayedMerge, ConfigDelayedMergeObject) that replaces itself during substitution resolution in order to implement "look backwards only" semantics.
Attributes
- Supertypes
-
trait Containertrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
class ConfigDelayedMergeclass ConfigDelayedMergeObject
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ResolveContext.type
This exists because we have to memoize resolved substitutions as we go through the config tree; otherwise we could end up creating multiple copies of values or whole trees of values as we follow chains of substitutions.
This exists because we have to memoize resolved substitutions as we go through the config tree; otherwise we could end up creating multiple copies of values or whole trees of values as we follow chains of substitutions.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ResolveResult.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
This class is the source for values for a substitution like ${foo}
.
This class is the source for values for a substitution like ${foo}
.
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ResolveSource.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Status of substitution resolution.
Status of substitution resolution.
Attributes
- Companion
- object
- Supertypes
-
trait Enumtrait Producttrait Equalsclass Enum[ResolveStatus]trait Serializabletrait Comparable[ResolveStatus]trait Constableclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- enum
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
ResolveStatus.type
Deliberately shoving all the serialization code into this class instead of doing it OO-style with each subclass. Seems better to have it all in one place. This class implements a lame serialization format that supports skipping unknown fields, so it's moderately more extensible than the default Java serialization format.
Deliberately shoving all the serialization code into this class instead of doing it OO-style with each subclass. Seems better to have it all in one place. This class implements a lame serialization format that supports skipping unknown fields, so it's moderately more extensible than the default Java serialization format.
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
Attributes
- Companion
- object
- Supertypes
-
trait Externalizabletrait Serializableclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- object
- Supertypes
-
trait Enumtrait Producttrait Equalsclass Enum[SerializedField]trait Serializabletrait Comparable[SerializedField]trait Constableclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- enum
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
SerializedField.type
Attributes
- Companion
- object
- Supertypes
-
trait Enumtrait Producttrait Equalsclass Enum[SerializedValueType]trait Serializabletrait Comparable[SerializedValueType]trait Constableclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- enum
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
SerializedValueType.type
One thing to keep in mind in the future: as Collection-like APIs are added here, including iterators or size() or anything, they should be consistent with a one-level java.util.Map from paths to non-null values. Null values are not "in" the map.
One thing to keep in mind in the future: as Collection-like APIs are added here, including iterators or size() or anything, they should be consistent with a one-level java.util.Map from paths to non-null values. Null values are not "in" the map.
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
SimpleConfig.type
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait MergeableValuetrait Configtrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
SimpleConfigList.type
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Containertrait ConfigListtrait List[ConfigValue]trait Collection[ConfigValue]trait Iterable[ConfigValue]class AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
SimpleConfigObject.type
Attributes
- Companion
- object
- Supertypes
-
trait Serializableclass AbstractConfigObjecttrait Containertrait ConfigObjectclass AbstractConfigValuetrait MergeableValuetrait ConfigValuetrait ConfigMergeableclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
SimpleConfigOrigin.type
Attributes
- Companion
- object
- Supertypes
Attributes
- Supertypes
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
SimpleIncluder.type
Attributes
- Companion
- object
- Supertypes
-
trait FullIncludertrait ConfigIncluderClasspathtrait ConfigIncluderURLtrait ConfigIncluderFiletrait ConfigIncluderclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class Substitutionclass Value
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
Tokenizer.type
To workaround missing implementations in Scala.js and Scala Native
To workaround missing implementations in Scala.js and Scala Native
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class PlatformClassLoader
To workaround missing implementations in Scala.js and Scala Native
To workaround missing implementations in Scala.js and Scala Native
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class PlatformThread
To workaround missing implementations in Scala.js and Scala Native
To workaround missing implementations in Scala.js and Scala Native
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class PlatformUri
Interface that tags a ConfigValue that is not mergeable until after substitutions are resolved. Basically these are special ConfigValue that never appear in a resolved tree, like ConfigSubstitution
and ConfigDelayedMerge.
Interface that tags a ConfigValue that is not mergeable until after substitutions are resolved. Basically these are special ConfigValue that never appear in a resolved tree, like ConfigSubstitution
and ConfigDelayedMerge.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class ConfigConcatenationclass ConfigDelayedMergeclass ConfigDelayedMergeObjectclass ConfigReference