Record Class EnvStatement
java.lang.Object
java.lang.Record
com.darkcollective.relix.lang.ast.EnvStatement
- Record Components:
filePath- path to the JSON environment file; absent uses the defaultactiveEnv- name of the active environment profile within the file; absent defers to the CLI flag or"development"location- the source location of this statement; never null
- All Implemented Interfaces:
Statement
public record EnvStatement(Optional<String> filePath, Optional<String> activeEnv, SourceLocation location)
extends Record
implements Statement
An
env statement — declares the environment file and active profile
used for credential and configuration variable resolution.
Syntax forms:
env from './.relix-env.json' using 'development'; env from './.relix-env.json'; // activeEnv absent env using 'production'; // filePath absent (use default path) env; // both absent (all defaults)
When filePath() is absent the runtime looks for
.relix-env.json in the same directory as the script. When
activeEnv() is absent the environment is selected by the
--env CLI flag or defaults to "development".
${VAR} placeholders in the environment file are resolved against
OS environment variables.
-
Constructor Summary
ConstructorsConstructorDescriptionEnvStatement(Optional<String> filePath, Optional<String> activeEnv) Convenience constructor for tests; usesSourceLocation.UNKNOWN.EnvStatement(Optional<String> filePath, Optional<String> activeEnv, SourceLocation location) Creates an instance of aEnvStatementrecord class. -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of theactiveEnvrecord component.static EnvStatementdefaults()Returns an env statement with no path or environment specified (all defaults).final booleanIndicates whether some other object is "equal to" this one.filePath()Returns the value of thefilePathrecord component.final inthashCode()Returns a hash code value for this object.location()Returns the value of thelocationrecord component.final StringtoString()Returns a string representation of this record class.
-
Constructor Details
-
EnvStatement
Creates an instance of aEnvStatementrecord class. -
EnvStatement
Convenience constructor for tests; usesSourceLocation.UNKNOWN.
-
-
Method Details
-
defaults
Returns an env statement with no path or environment specified (all defaults). -
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
filePath
Returns the value of thefilePathrecord component.- Returns:
- the value of the
filePathrecord component
-
activeEnv
Returns the value of theactiveEnvrecord component.- Returns:
- the value of the
activeEnvrecord component
-
location
Returns the value of thelocationrecord component.
-