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, @Nullable String returnType)
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, String returnType) 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.booleanCheck if this program declares a return value.Returns the value of theparameterSignaturerecord component.Returns the value of thequalifiedNamerecord component.Returns the value of thereturnTyperecord component.toString()Returns a string representation of this record class.
-
Constructor Details
-
ProgramDetails
public ProgramDetails(String qualifiedName, List<ParameterDetails> parameterSignature, @Nullable String applicationName, @Nullable String returnType) Creates an instance of aProgramDetailsrecord class.- Parameters:
qualifiedName- the value for thequalifiedNamerecord componentparameterSignature- the value for theparameterSignaturerecord componentapplicationName- the value for theapplicationNamerecord componentreturnType- the value for thereturnTyperecord component
-
-
Method Details
-
hasApplication
public boolean hasApplication()Check if this program has an associated Application for dependency injection. -
hasReturn
public boolean hasReturn()Check if this program declares a return value. An EK9 program may optionally return anInteger(only an Integer, per E07590) which becomes the OS process exit code; a program with no return exits 0 on normal completion.returnTypeis the EK9 fully-qualified type name of the returned value (e.g.org.ek9.lang::Integer), ornullfor no return. -
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
-
returnType
Returns the value of thereturnTyperecord component.- Returns:
- the value of the
returnTyperecord component
-