Module org.kink_lang.kink
Interface MakeFastFunGenerator
- All Known Implementing Classes:
MakeBindingCaptureFastFunGenerator
,MakeValCaptureFastFunGenerator
public interface MakeFastFunGenerator
Makes insns to make SSA funs.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final org.objectweb.asm.Handle
Handle of FunBootstrapper.bootstrapCombinator.static final org.objectweb.asm.Handle
Handle of FunBootstrapper.bootstrapMakeFun.static final String
The internal name of FunBootstrapper. -
Method Summary
Modifier and TypeMethodDescriptionstatic MethodType
constructorType
(int valFieldCount) Returns the type of the fun constructor.generateCombinator
(int jcirInd) Generates insns for a combinator.makeFun
(FastFunItree fun) Makes insns to make an SSA fun.
-
Field Details
-
FUN_BOOTSTRAPPER_NAME
The internal name of FunBootstrapper.- See Also:
-
BOOTSTRAP_MAKE_FUN_HANDLE
static final org.objectweb.asm.Handle BOOTSTRAP_MAKE_FUN_HANDLEHandle of FunBootstrapper.bootstrapMakeFun. -
BOOTSTRAP_COMBINATOR_HANDLE
static final org.objectweb.asm.Handle BOOTSTRAP_COMBINATOR_HANDLEHandle of FunBootstrapper.bootstrapCombinator.
-
-
Method Details
-
makeFun
Makes insns to make an SSA fun.The insns must push the fun to the Java stack.
- Parameters:
fun
- the fun.- Returns:
- insns.
-
generateCombinator
Generates insns for a combinator.The insns push the combinator to the Java stack.
- Parameters:
jcirInd
- the index of the jcir in childJcirs list.- Returns:
- insns.
-
constructorType
Returns the type of the fun constructor.- Parameters:
valFieldCount
- the count of val fields of the fun class.- Returns:
- the type of the fun constructor.
-