diff --git a/.idea/modules.xml b/.idea/modules.xml index 335a959bed2..8958a9581db 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -6,6 +6,7 @@ + diff --git a/idea/idea.iml b/idea/idea.iml index fcc6e7e360a..d01e54ca4d0 100644 --- a/idea/idea.iml +++ b/idea/idea.iml @@ -10,6 +10,7 @@ + diff --git a/idea/src/org/jetbrains/jet/codegen/ExpressionCodegen.java b/idea/src/org/jetbrains/jet/codegen/ExpressionCodegen.java index b19daacfe70..1f6a0aa7b26 100644 --- a/idea/src/org/jetbrains/jet/codegen/ExpressionCodegen.java +++ b/idea/src/org/jetbrains/jet/codegen/ExpressionCodegen.java @@ -4,6 +4,7 @@ import com.intellij.openapi.project.Project; import com.intellij.psi.*; import com.intellij.psi.search.ProjectScope; import com.intellij.psi.tree.IElementType; +import jet.IntRange; import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.psi.*; import org.jetbrains.jet.lang.resolve.BindingContext; @@ -32,11 +33,15 @@ public class ExpressionCodegen extends JetVisitor { private static final String CLASS_ITERABLE = "java/lang/Iterable"; private static final String CLASS_ITERATOR = "java/util/Iterator"; + private static final String CLASS_INT_RANGE = "jet/IntRange"; + private static final String ITERABLE_ITERATOR_DESCRIPTOR = "()Ljava/util/Iterator;"; private static final String ITERATOR_HASNEXT_DESCRIPTOR = "()Z"; private static final String ITERATOR_NEXT_DESCRIPTOR = "()Ljava/lang/Object;"; + private static final String INT_RANGE_CONSTRUCTOR_DESCRIPTOR = "(II)V"; private static final Type ITERATOR_TYPE = Type.getType(Iterator.class); + private static final Type INT_RANGE_TYPE = Type.getType(IntRange.class); private final Stack