Package org.ek9lang.compiler.support
Class ParameterizedSymbolCreator
java.lang.Object
org.ek9lang.compiler.support.ParameterizedSymbolCreator
- All Implemented Interfaces:
BiFunction<PossibleGenericSymbol,
List<ISymbol>, PossibleGenericSymbol>
public class ParameterizedSymbolCreator
extends Object
implements BiFunction<PossibleGenericSymbol,List<ISymbol>,PossibleGenericSymbol>
This will just create a Aggregate/Function 'parameterized type' of the 'generic type' with the 'type arguments'
But note it will have not - repeat NOT have - traversed the 'generic type' and cloned over the methods and
altered all the 'T', 'K', 'V' - 'type parameters' for each of the 'type arguments'
There is a separate function (TypeSubstitution) that does that.
This is because the timing of when to do that is important.
-
Constructor Summary
ConstructorDescriptionParameterizedSymbolCreator
(BiFunction<PossibleGenericSymbol, List<ISymbol>, String> internalNameFor) -
Method Summary
Modifier and TypeMethodDescriptionapply
(PossibleGenericSymbol possibleGenericSymbol, List<ISymbol> typeArguments) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.function.BiFunction
andThen
-
Constructor Details
-
ParameterizedSymbolCreator
public ParameterizedSymbolCreator(BiFunction<PossibleGenericSymbol, List<ISymbol>, String> internalNameFor)
-
-
Method Details
-
apply
public PossibleGenericSymbol apply(PossibleGenericSymbol possibleGenericSymbol, List<ISymbol> typeArguments) - Specified by:
apply
in interfaceBiFunction<PossibleGenericSymbol,
List<ISymbol>, PossibleGenericSymbol>
-