Record Class ProgramDetails
java.lang.Object
java.lang.Record
org.ek9lang.compiler.ir.data.ProgramDetails
public record ProgramDetails(String qualifiedName, List<ParameterDetails> parameterSignature, @Nullable String applicationName)
extends Record
Represents details about an EK9 program for the PROGRAM_ENTRY_POINT_BLOCK.
Contains all information needed by backends to generate type-safe program selection
and argument conversion logic.
-
Constructor Summary
ConstructorsConstructorDescriptionProgramDetails(String qualifiedName, List<ParameterDetails> parameterSignature, String applicationName) Creates an instance of aProgramDetailsrecord class. -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of theapplicationNamerecord component.final booleanIndicates whether some other object is "equal to" this one.booleanCheck if this program has an associated Application for dependency injection.final inthashCode()Returns a hash code value for this object.Returns the value of theparameterSignaturerecord component.Returns the value of thequalifiedNamerecord component.toString()Returns a string representation of this record class.
-
Constructor Details
-
ProgramDetails
public ProgramDetails(String qualifiedName, List<ParameterDetails> parameterSignature, @Nullable String applicationName) Creates an instance of aProgramDetailsrecord class.- Parameters:
qualifiedName- the value for thequalifiedNamerecord componentparameterSignature- the value for theparameterSignaturerecord componentapplicationName- the value for theapplicationNamerecord component
-
-
Method Details
-
hasApplication
public boolean hasApplication()Check if this program has an associated Application for dependency injection. -
toString
-
hashCode
-
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). -
qualifiedName
Returns the value of thequalifiedNamerecord component.- Returns:
- the value of the
qualifiedNamerecord component
-
parameterSignature
Returns the value of theparameterSignaturerecord component.- Returns:
- the value of the
parameterSignaturerecord component
-
applicationName
Returns the value of theapplicationNamerecord component.- Returns:
- the value of the
applicationNamerecord component
-