org.jetbrains.k2js.translate.utils
Class TranslationUtils

java.lang.Object
  extended by org.jetbrains.k2js.translate.utils.TranslationUtils

public final class TranslationUtils
extends java.lang.Object


Field Summary
static java.util.Comparator<FunctionDescriptor> OVERLOADED_FUNCTION_COMPARATOR
           
 
Method Summary
static JsExpression assignmentToBackingField(TranslationContext context, PropertyDescriptor descriptor, JsExpression assignTo)
           
static JsNameRef backingFieldReference(TranslationContext context, PropertyDescriptor descriptor)
           
static com.intellij.openapi.util.Pair<JsVars.JsVar,JsExpression> createTemporaryIfNeed(JsExpression expression, TranslationContext context)
           
static java.util.List<JsExpression> generateInvocationArguments(JsExpression receiver, java.util.List<JsExpression> arguments)
           
static java.lang.String getJetTypeFqName(JetType jetType)
           
static java.lang.String getMangledName(PropertyDescriptor descriptor, java.lang.String suggestedName)
           
static java.lang.String getSuggestedName(DeclarationDescriptor descriptor)
           
static java.lang.String getSuggestedNameForInnerDeclaration(TranslationContext context, DeclarationDescriptor descriptor)
           
static boolean hasCorrespondingFunctionIntrinsic(TranslationContext context, JetOperationExpression expression)
           
static boolean isCacheNeeded(JsExpression expression)
           
static boolean isEqualLikeOperator(JsBinaryOperator operator)
           
static JsBinaryOperation isNotNullCheck(JsExpression expressionToCheck)
           
static JsBinaryOperation isNullCheck(JsExpression expressionToCheck)
           
static JsConditional notNullConditional(JsExpression expression, JsExpression elseExpression, TranslationContext context)
           
static JsBinaryOperation nullCheck(JsExpression expressionToCheck, boolean isNegated)
           
static JsFunction simpleReturnFunction(JsScope functionScope, JsExpression returnExpression)
           
static JsConditional sure(JsExpression expression, TranslationContext context)
           
static JsExpression translateBaseExpression(TranslationContext context, JetUnaryExpression expression)
           
static JsExpression translateExclForBinaryEqualLikeExpr(JsBinaryOperation baseBinaryExpression)
           
static JsPropertyInitializer translateFunctionAsEcma5PropertyDescriptor(JsFunction function, FunctionDescriptor descriptor, TranslationContext context)
           
static JsExpression translateInitializerForProperty(JetProperty declaration, TranslationContext context)
           
static JsExpression translateLeftExpression(TranslationContext context, JetBinaryExpression expression)
           
static JsExpression translateRightExpression(TranslationContext context, JetBinaryExpression expression)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

OVERLOADED_FUNCTION_COMPARATOR

public static final java.util.Comparator<FunctionDescriptor> OVERLOADED_FUNCTION_COMPARATOR
Method Detail

translateFunctionAsEcma5PropertyDescriptor

@NotNull
public static JsPropertyInitializer translateFunctionAsEcma5PropertyDescriptor(@NotNull
                                                                                       JsFunction function,
                                                                                       @NotNull
                                                                                       FunctionDescriptor descriptor,
                                                                                       @NotNull
                                                                                       TranslationContext context)

simpleReturnFunction

@NotNull
public static JsFunction simpleReturnFunction(@NotNull
                                                      JsScope functionScope,
                                                      @NotNull
                                                      JsExpression returnExpression)

translateExclForBinaryEqualLikeExpr

@NotNull
public static JsExpression translateExclForBinaryEqualLikeExpr(@NotNull
                                                                       JsBinaryOperation baseBinaryExpression)

isEqualLikeOperator

public static boolean isEqualLikeOperator(@NotNull
                                          JsBinaryOperator operator)

isNullCheck

@NotNull
public static JsBinaryOperation isNullCheck(@NotNull
                                                    JsExpression expressionToCheck)

isNotNullCheck

@NotNull
public static JsBinaryOperation isNotNullCheck(@NotNull
                                                       JsExpression expressionToCheck)

nullCheck

@NotNull
public static JsBinaryOperation nullCheck(@NotNull
                                                  JsExpression expressionToCheck,
                                                  boolean isNegated)

notNullConditional

@NotNull
public static JsConditional notNullConditional(@NotNull
                                                       JsExpression expression,
                                                       @NotNull
                                                       JsExpression elseExpression,
                                                       @NotNull
                                                       TranslationContext context)

getMangledName

@NotNull
public static java.lang.String getMangledName(@NotNull
                                                      PropertyDescriptor descriptor,
                                                      @NotNull
                                                      java.lang.String suggestedName)

getSuggestedName

@NotNull
public static java.lang.String getSuggestedName(@NotNull
                                                        DeclarationDescriptor descriptor)

getJetTypeFqName

@NotNull
public static java.lang.String getJetTypeFqName(@NotNull
                                                        JetType jetType)

backingFieldReference

@NotNull
public static JsNameRef backingFieldReference(@NotNull
                                                      TranslationContext context,
                                                      @NotNull
                                                      PropertyDescriptor descriptor)

assignmentToBackingField

@NotNull
public static JsExpression assignmentToBackingField(@NotNull
                                                            TranslationContext context,
                                                            @NotNull
                                                            PropertyDescriptor descriptor,
                                                            @NotNull
                                                            JsExpression assignTo)

translateInitializerForProperty

@Nullable
public static JsExpression translateInitializerForProperty(@NotNull
                                                                    JetProperty declaration,
                                                                    @NotNull
                                                                    TranslationContext context)

translateBaseExpression

@NotNull
public static JsExpression translateBaseExpression(@NotNull
                                                           TranslationContext context,
                                                           @NotNull
                                                           JetUnaryExpression expression)

translateLeftExpression

@NotNull
public static JsExpression translateLeftExpression(@NotNull
                                                           TranslationContext context,
                                                           @NotNull
                                                           JetBinaryExpression expression)

translateRightExpression

@NotNull
public static JsExpression translateRightExpression(@NotNull
                                                            TranslationContext context,
                                                            @NotNull
                                                            JetBinaryExpression expression)

hasCorrespondingFunctionIntrinsic

public static boolean hasCorrespondingFunctionIntrinsic(@NotNull
                                                        TranslationContext context,
                                                        @NotNull
                                                        JetOperationExpression expression)

generateInvocationArguments

@NotNull
public static java.util.List<JsExpression> generateInvocationArguments(@NotNull
                                                                               JsExpression receiver,
                                                                               @NotNull
                                                                               java.util.List<JsExpression> arguments)

isCacheNeeded

public static boolean isCacheNeeded(@NotNull
                                    JsExpression expression)

createTemporaryIfNeed

@NotNull
public static com.intellij.openapi.util.Pair<JsVars.JsVar,JsExpression> createTemporaryIfNeed(@NotNull
                                                                                                      JsExpression expression,
                                                                                                      @NotNull
                                                                                                      TranslationContext context)

sure

@NotNull
public static JsConditional sure(@NotNull
                                         JsExpression expression,
                                         @NotNull
                                         TranslationContext context)

getSuggestedNameForInnerDeclaration

@NotNull
public static java.lang.String getSuggestedNameForInnerDeclaration(TranslationContext context,
                                                                           DeclarationDescriptor descriptor)