update NOTICE and LICENSE
[nit.git] / tests / error_needed_method.nit
1 # This file is part of NIT ( http://www.nitlanguage.org ).
2 #
3 # Copyright 2009 Jean Privat <jean@pryen.org>
4 #
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
8 #
9 # http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
16
17 import end
18 interface Object
19 fun output is abstract
20 end
21
22 interface Discrete
23 end
24
25 enum Int
26 super Discrete
27 end
28
29 interface Collection[E]
30 end
31
32 class String
33 end
34
35 enum NativeString
36 end
37
38 class Array[E]
39 super Collection[E]
40 end
41
42 class Range[E]
43 super Collection[E]
44 end
45
46 #alt1#var a = [1, 2]
47 #alt2#for i in new Collection[Int] do i.output
48 #alt3#var s = "str"
49 #alt4#var s2 = "str{5}str"
50 #alt5#var r = [1..10]
51 #alt6#var r = [1..10[
52 #alt7#fun foo(x: Int...) do end
53 #alt7#foo(1, 2, 3)
54
55 do
56 end