public class CodegenUtil extends java.lang.Object
Modifier and Type | Method and Description |
---|---|
static boolean |
couldUseDirectAccessToProperty(PropertyDescriptor propertyDescriptor,
boolean forGetter,
boolean isInsideClass,
boolean isDelegated) |
static SimpleFunctionDescriptor |
createInvoke(FunctionDescriptor fd) |
static java.lang.String |
createTmpVariableName(java.util.Collection<java.lang.String> existingNames) |
static JvmMethodSignature |
erasedInvokeSignature(FunctionDescriptor fd) |
static FunctionDescriptor |
getDeclaredFunctionByRawSignature(ClassDescriptor owner,
Name name,
ClassDescriptor returnedClass,
ClassDescriptor... valueParameterClasses) |
static int |
getFlagsForClassKind(ClassDescriptor descriptor) |
static int |
getFlagsForVisibility(Visibility visibility) |
static ImplementationBodyCodegen |
getParentBodyCodegen(MemberCodegen classBodyCodegen) |
static JetType |
getSuperClass(ClassDescriptor classDescriptor) |
static boolean |
hasAbstractMembers(ClassDescriptor classDescriptor) |
static boolean |
isCallInsideSameClassAsDeclared(CallableMemberDescriptor declarationDescriptor,
CodegenContext context) |
static boolean |
isCallInsideSameModuleAsDeclared(CallableMemberDescriptor declarationDescriptor,
CodegenContext context) |
static boolean |
isConst(CalculatedClosure closure) |
static boolean |
isInterface(DeclarationDescriptor descriptor) |
static boolean |
isInterface(JetType type) |
static boolean |
isNonLiteralObject(JetClassOrObject myClass) |
static boolean |
isNullableType(JetType type)
A work-around of the generic nullability problem in the type checker
|
static <T> T |
peekFromStack(com.intellij.util.containers.Stack<T> stack) |
static <T extends CallableMemberDescriptor> |
unwrapFakeOverride(T member) |
public static boolean isInterface(DeclarationDescriptor descriptor)
public static boolean isInterface(JetType type)
public static SimpleFunctionDescriptor createInvoke(FunctionDescriptor fd)
public static boolean isNonLiteralObject(JetClassOrObject myClass)
public static java.lang.String createTmpVariableName(java.util.Collection<java.lang.String> existingNames)
public static int getFlagsForVisibility(@NotNull Visibility visibility)
public static int getFlagsForClassKind(@NotNull ClassDescriptor descriptor)
public static JvmMethodSignature erasedInvokeSignature(FunctionDescriptor fd)
public static boolean isConst(CalculatedClosure closure)
public static <T> T peekFromStack(com.intellij.util.containers.Stack<T> stack)
public static JetType getSuperClass(ClassDescriptor classDescriptor)
@NotNull public static <T extends CallableMemberDescriptor> T unwrapFakeOverride(T member)
@Nullable public static FunctionDescriptor getDeclaredFunctionByRawSignature(@NotNull ClassDescriptor owner, @NotNull Name name, @NotNull ClassDescriptor returnedClass, @NotNull ClassDescriptor... valueParameterClasses)
public static boolean isCallInsideSameClassAsDeclared(CallableMemberDescriptor declarationDescriptor, CodegenContext context)
public static boolean isCallInsideSameModuleAsDeclared(CallableMemberDescriptor declarationDescriptor, CodegenContext context)
public static boolean hasAbstractMembers(@NotNull ClassDescriptor classDescriptor)
public static boolean isNullableType(@NotNull JetType type)
public static boolean couldUseDirectAccessToProperty(@NotNull PropertyDescriptor propertyDescriptor, boolean forGetter, boolean isInsideClass, boolean isDelegated)
@NotNull public static ImplementationBodyCodegen getParentBodyCodegen(@Nullable MemberCodegen classBodyCodegen)