Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
硅谷海盗
kotlin
提交
1792a71a
K
kotlin
项目概览
硅谷海盗
/
kotlin
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
kotlin
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
1792a71a
编写于
3月 15, 2011
作者:
A
Andrey Breslav
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
IntRanges + fixes in tests
上级
cd2b128f
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
50 addition
and
37 deletion
+50
-37
idea/src/jet/lang/Library.jet
idea/src/jet/lang/Library.jet
+38
-25
idea/testData/resolve/ResolveToJava.jet
idea/testData/resolve/ResolveToJava.jet
+1
-1
idea/tests/org/jetbrains/jet/types/JetTypeCheckerTest.java
idea/tests/org/jetbrains/jet/types/JetTypeCheckerTest.java
+11
-11
未找到文件。
idea/src/jet/lang/Library.jet
浏览文件 @
1792a71a
...
...
@@ -24,6 +24,19 @@ class Range<in T : Comparable<T>> {
fun contains(item : T) : Boolean
}
class Iterator<out T> {
fun next() : T
val hasNext : Boolean
}
class Iterable<out T> {
fun iterator() : Iterator<T>
}
class IntRange<T> : Range<T>, Iterable<T> {
}
class Number {
val d : Double
val f : Float
...
...
@@ -205,11 +218,11 @@ class Long : Number, Comparable<Long> {
fun rangeTo(other : Double) : Range<Double>
fun rangeTo(other : Float) : Range<Float>
fun rangeTo(other : Long) : Range<Long>
fun rangeTo(other : Int) : Range<Long>
fun rangeTo(other : Short) : Range<Long>
fun rangeTo(other : Byte) : Range<Long>
fun rangeTo(other : Char) : Range<Long>
fun rangeTo(other : Long) :
Int
Range<Long>
fun rangeTo(other : Int) :
Int
Range<Long>
fun rangeTo(other : Short) :
Int
Range<Long>
fun rangeTo(other : Byte) :
Int
Range<Long>
fun rangeTo(other : Char) :
Int
Range<Long>
fun inc() : Long
fun dec() : Long
...
...
@@ -266,11 +279,11 @@ class Int : Number, Comparable<Int> {
fun rangeTo(other : Double) : Range<Double>
fun rangeTo(other : Float) : Range<Float>
fun rangeTo(other : Long) : Range<Long>
fun rangeTo(other : Int) : Range<Int>
fun rangeTo(other : Short) : Range<Int>
fun rangeTo(other : Byte) : Range<Int>
fun rangeTo(other : Char) : Range<Int>
fun rangeTo(other : Long) :
Int
Range<Long>
fun rangeTo(other : Int) :
Int
Range<Int>
fun rangeTo(other : Short) :
Int
Range<Int>
fun rangeTo(other : Byte) :
Int
Range<Int>
fun rangeTo(other : Char) :
Int
Range<Int>
fun inc() : Int
fun dec() : Int
...
...
@@ -327,11 +340,11 @@ class Char : Number, Comparable<Char> {
fun rangeTo(other : Double) : Range<Double>
fun rangeTo(other : Float) : Range<Float>
fun rangeTo(other : Long) : Range<Long>
fun rangeTo(other : Int) : Range<Int>
fun rangeTo(other : Short) : Range<Int>
fun rangeTo(other : Byte) : Range<Int>
fun rangeTo(other : Char) : Range<Int>
fun rangeTo(other : Long) :
Int
Range<Long>
fun rangeTo(other : Int) :
Int
Range<Int>
fun rangeTo(other : Short) :
Int
Range<Int>
fun rangeTo(other : Byte) :
Int
Range<Int>
fun rangeTo(other : Char) :
Int
Range<Int>
fun inc() : Char
fun dec() : Char
...
...
@@ -388,11 +401,11 @@ class Short : Number, Comparable<Char> {
fun rangeTo(other : Double) : Range<Double>
fun rangeTo(other : Float) : Range<Float>
fun rangeTo(other : Long) : Range<Long>
fun rangeTo(other : Int) : Range<Int>
fun rangeTo(other : Short) : Range<Int>
fun rangeTo(other : Byte) : Range<Int>
fun rangeTo(other : Char) : Range<Int>
fun rangeTo(other : Long) :
Int
Range<Long>
fun rangeTo(other : Int) :
Int
Range<Int>
fun rangeTo(other : Short) :
Int
Range<Int>
fun rangeTo(other : Byte) :
Int
Range<Int>
fun rangeTo(other : Char) :
Int
Range<Int>
fun inc() : Short
fun dec() : Short
...
...
@@ -449,11 +462,11 @@ class Byte : Number, Comparable<Char> {
fun rangeTo(other : Double) : Range<Double>
fun rangeTo(other : Float) : Range<Float>
fun rangeTo(other : Long) : Range<Long>
fun rangeTo(other : Int) : Range<Int>
fun rangeTo(other : Short) : Range<Int>
fun rangeTo(other : Byte) : Range<Int>
fun rangeTo(other : Char) : Range<Int>
fun rangeTo(other : Long) :
Int
Range<Long>
fun rangeTo(other : Int) :
Int
Range<Int>
fun rangeTo(other : Short) :
Int
Range<Int>
fun rangeTo(other : Byte) :
Int
Range<Int>
fun rangeTo(other : Char) :
Int
Range<Int>
fun inc() : Byte
fun dec() : Byte
...
...
idea/testData/resolve/ResolveToJava.jet
浏览文件 @
1792a71a
...
...
@@ -35,7 +35,7 @@ class B : `java::java.lang.Object`Object {
}
}
~c~fun c(~x~x : `java::java.lang.Number`Number) {
~c~fun c(~x~x :
java.lang.
`java::java.lang.Number`Number) {
`x`x.`java::java.lang.Number.intValue()`intValue()
}
...
...
idea/tests/org/jetbrains/jet/types/JetTypeCheckerTest.java
浏览文件 @
1792a71a
...
...
@@ -105,25 +105,25 @@ public class JetTypeCheckerTest extends LightDaemonAnalyzerTestCase {
assertType
(
"if (true) 1 else null"
,
"Int?"
);
assertType
(
"if (true) null else null"
,
"Nothing?"
);
assertType
(
"if (true) 1 else '1'"
,
"
Comparable<out Any>
"
);
assertType
(
"if (true) 1 else '1'"
,
"
Any
"
);
}
public
void
testWhen
()
throws
Exception
{
assertType
(
"when (1) { is 1 => 2; } "
,
"Int"
);
assertType
(
"when (1) { is 1 => 2; is 1 => '2'} "
,
"
Comparable<out Any>
"
);
assertType
(
"when (1) { is 1 => 2; is 1 => '2'; is 1 => null} "
,
"
Comparable<out Any>
?"
);
assertType
(
"when (1) { is 1 => 2; is 1 => '2'; else => null} "
,
"
Comparable<out Any>
?"
);
assertType
(
"when (1) { is 1 => 2; is 1 => '2'; else continue} "
,
"
Comparable<out Any>
"
);
assertType
(
"when (1) { is 1 => 2; is 1 => '2'; is 1 when(e) {is 1 => null}} "
,
"
Comparable<out Any>
?"
);
assertType
(
"when (1) { is 1 => 2; is 1 => '2'; is 1 => when(e) {is 1 => null}} "
,
"
Comparable<out Any>
?"
);
assertType
(
"when (1) { is 1 => 2; is 1 => '2'} "
,
"
Any
"
);
assertType
(
"when (1) { is 1 => 2; is 1 => '2'; is 1 => null} "
,
"
Any
?"
);
assertType
(
"when (1) { is 1 => 2; is 1 => '2'; else => null} "
,
"
Any
?"
);
assertType
(
"when (1) { is 1 => 2; is 1 => '2'; else continue} "
,
"
Any
"
);
assertType
(
"when (1) { is 1 => 2; is 1 => '2'; is 1 when(e) {is 1 => null}} "
,
"
Any
?"
);
assertType
(
"when (1) { is 1 => 2; is 1 => '2'; is 1 => when(e) {is 1 => null}} "
,
"
Any
?"
);
}
public
void
testTry
()
throws
Exception
{
assertType
(
"try {1} finally{2}"
,
"Int"
);
assertType
(
"try {1} catch (e : e) {'a'} finally{2}"
,
"Int"
);
assertType
(
"try {1} catch (e : e) {'a'} finally{'2'}"
,
"
Comparable<out Any>
"
);
assertType
(
"try {1} catch (e : e) {'a'}"
,
"
Comparable<out Any>
"
);
assertType
(
"try {1} catch (e : e) {'a'} catch (e : e) {null}"
,
"
Comparable<out Any>
?"
);
assertType
(
"try {1} catch (e : e) {'a'} finally{'2'}"
,
"
Any
"
);
assertType
(
"try {1} catch (e : e) {'a'}"
,
"
Any
"
);
assertType
(
"try {1} catch (e : e) {'a'} catch (e : e) {null}"
,
"
Any
?"
);
assertType
(
"try {} catch (e : e) {}"
,
"Unit"
);
}
...
...
@@ -137,7 +137,7 @@ public class JetTypeCheckerTest extends LightDaemonAnalyzerTestCase {
assertCommonSupertype
(
"Int?"
,
"Int"
,
"Nothing?"
);
assertCommonSupertype
(
"Nothing?"
,
"Nothing?"
,
"Nothing?"
);
assertCommonSupertype
(
"
Comparable<out Any>
"
,
"Int"
,
"Char"
);
assertCommonSupertype
(
"
Any
"
,
"Int"
,
"Char"
);
assertCommonSupertype
(
"Base_T<*>"
,
"Base_T<*>"
,
"Derived_T<*>"
);
assertCommonSupertype
(
"Any"
,
"Base_inT<*>"
,
"Derived_T<*>"
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录