1 # This file is part of NIT ( http://www.nitlanguage.org ).
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
7 # http://www.apache.org/licenses/LICENSE-2.0
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
16 fun bar: Bool do return true
18 fun foo(other: Foo): Foo
49 var heap: ArrayHeap[E]
50 init to(comparator: Comparator[E]) do heap = new ArrayHeap[E](comparator)
52 init from(comparator: Comparator[E], items: Collection[E]) do
53 heap = new ArrayHeap[E].from(comparator, items.to_a)
56 fun count(k: E): Int do
64 fun node_at_idx(i: Int, k: E) do
66 if heap.is_empty or i == k then # FIXME prefilter because the compiler is not smart enought yet
72 fun save_those_nodes(nodes: Collection[Object]) do
73 for node in nodes do count(node)
78 if last_slash > 0 then
79 return substring(last_slash + 1, length)
85 print "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam tincidun" +
86 "t sapien et velit fringilla varius at non eros. Nunc ut ultricies metus, sit a" +
87 "met lacinia felis. Donec in facilisis neque, non laoreet nibh. Etiam nec purus" +
88 " eu orci congue iaculis eu quis lorem. Ut et blandit erat. Cras fermentum pell" +
89 "entesque ante, ut dapibus ipsum placerat sit amet. Vivamus pharetra, sem vitae" +
90 " consequat venenatis, diam risus placerat est, sed hendrerit purus justo vitae" +
91 " lectus. In id quam mattis, rutrum augue eu, vehicula ipsum. Nulla nec egestas" +
92 " turpis, nec ullamcorper odio. Pellentesque vitae arcu justo. Aliquam sed phar" +
96 var ipsum = "ipsum" # for fun
98 print "We also need to handle super strings: {lorem} {ipsum} dolor sit amet, con" +
99 "sectetur adipiscing elit. Aliquam tincidunt sapien et velit fringilla varius a" +
100 "t non eros. Nunc ut ultricies metus, sit amet lacinia felis. Donec in facilisi" +
101 "s neque, non laoreet nibh. Etiam nec purus eu orci congue iaculis eu quis {lorem}" +
102 ". Ut et blandit erat. Cras fermentum pellentesque ante, ut dapibus {ipsum} pla" +
103 "cerat sit amet. Vivamus pharetra, sem vitae consequat venenatis, diam risus pl" +
104 "acerat est, sed hendrerit purus justo vitae lectus. In id quam mattis, rutrum " +
105 "augue eu, vehicula ipsum. Nulla nec egestas turpis, nec ullamcorper odio. Pell" +
106 "entesque vitae arcu justo. Aliquam sed pharetra lacus." # ending
109 var links = new Array[String] # why not?
114 <meta charset="utf-8">
115 <meta http-equiv="X-UA-Compatible" content="IE=edge">
116 <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
117 <title>{{{title}}}</title>
120 <div class="container">
123 <li>{{{links.join("</li>\n\t\t\t<li>")}}}</li>