Record Class ResourceCloser.Closing
java.lang.Object
java.lang.Record
org.ek9lang.compiler.phase7.generator.ResourceCloser.Closing
- Record Components:
load- instructions that bring the value intovariable(empty for a value already in a variable - a resource or a statement's owner temp; a property's LOAD_FIELD for the property chain). They run just before the value's own close, inside the region.variable- the IR variable holding itstaticType- its static typestaticTypeName- the IR name of that typedebugInfo- where the close is attributed
- Enclosing class:
ResourceCloser
-
Constructor Summary
ConstructorsConstructorDescriptionA value already held in a variable.Closing(List<IRInstr> load, String variable, ISymbol staticType, String staticTypeName, DebugInfo debugInfo) A value brought into a variable byload(a property's LOAD_FIELD).Closing(List<IRInstr> load, String variable, ISymbol staticType, String staticTypeName, DebugInfo debugInfo, boolean viaSuper) Creates an instance of aClosingrecord class. -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of thedebugInforecord component.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.load()Returns the value of theloadrecord component.Returns the value of thestaticTyperecord component.Returns the value of thestaticTypeNamerecord component.final StringtoString()Returns a string representation of this record class.variable()Returns the value of thevariablerecord component.booleanviaSuper()Returns the value of theviaSuperrecord component.static ResourceCloser.ClosingThe super class's close, called NON-virtually on this object (super._close()): the last step of a generated close chain.
-
Constructor Details
-
Closing
-
Closing
-
Closing
public Closing(List<IRInstr> load, String variable, ISymbol staticType, String staticTypeName, DebugInfo debugInfo, boolean viaSuper) Creates an instance of aClosingrecord class.- Parameters:
load- the value for theloadrecord componentvariable- the value for thevariablerecord componentstaticType- the value for thestaticTyperecord componentstaticTypeName- the value for thestaticTypeNamerecord componentdebugInfo- the value for thedebugInforecord componentviaSuper- the value for theviaSuperrecord component
-
-
Method Details
-
viaSuper
public static ResourceCloser.Closing viaSuper(ISymbol superType, String superTypeName, DebugInfo debugInfo) The super class's close, called NON-virtually on this object (super._close()): the last step of a generated close chain. Never null-guarded - the object is there.- Parameters:
superType- the super class whose close (own or inherited from a class) is calledsuperTypeName- its IR name
-
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. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with thecomparemethod from their corresponding wrapper classes. -
load
-
variable
-
staticType
Returns the value of thestaticTyperecord component.- Returns:
- the value of the
staticTyperecord component
-
staticTypeName
Returns the value of thestaticTypeNamerecord component.- Returns:
- the value of the
staticTypeNamerecord component
-
debugInfo
-
viaSuper
public boolean viaSuper()Returns the value of theviaSuperrecord component.- Returns:
- the value of the
viaSuperrecord component
-