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 do
47 var heap: ArrayHeap[E]
48 init to(comparator: Comparator[E]) do heap = new ArrayHeap[E](comparator)
50 init from(comparator: Comparator[E], items: Collection[E]) do
51 heap = new ArrayHeap[E].from(comparator, items.to_a)
54 fun count(k: E): Int do
62 fun node_at_idx(i: Int, k: E) do
64 if heap.is_empty or i == k then # FIXME prefilter because the compiler is not smart enought yet
70 fun save_those_nodes(nodes: Collection[Object]) do
71 for node in nodes do count(node)
76 if last_slash > 0 then
77 return substring(last_slash + 1, length)
83 print "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam tincidunt sapien et velit fringilla varius at non eros. Nunc ut ultricies metus, sit amet lacinia felis. Donec in facilisis neque, non laoreet nibh. Etiam nec purus eu orci congue iaculis eu quis lorem. Ut et blandit erat. Cras fermentum pellentesque ante, ut dapibus ipsum placerat sit amet. Vivamus pharetra, sem vitae consequat venenatis, diam risus placerat est, sed hendrerit purus justo vitae lectus. In id quam mattis, rutrum augue eu, vehicula ipsum. Nulla nec egestas turpis, nec ullamcorper odio. Pellentesque vitae arcu justo. Aliquam sed pharetra lacus."
86 var ipsum = "ipsum" # for fun
88 print "We also need to handle super strings: {lorem} {ipsum} dolor sit amet, consectetur adipiscing elit. Aliquam tincidunt sapien et velit fringilla varius at non eros. Nunc ut ultricies metus, sit amet lacinia felis. Donec in facilisis neque, non laoreet nibh. Etiam nec purus eu orci congue iaculis eu quis {lorem}. Ut et blandit erat. Cras fermentum pellentesque ante, ut dapibus {ipsum} placerat sit amet. Vivamus pharetra, sem vitae consequat venenatis, diam risus placerat est, sed hendrerit purus justo vitae lectus. In id quam mattis, rutrum augue eu, vehicula ipsum. Nulla nec egestas turpis, nec ullamcorper odio. Pellentesque vitae arcu justo. Aliquam sed pharetra lacus." # ending
91 var links = new Array[String] # why not?
96 <meta charset="utf-8">
97 <meta http-equiv="X-UA-Compatible" content="IE=edge">
98 <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
99 <title>{{{title}}}</title>
102 <div class="container">
105 <li>{{{links.join("</li>\n\t\t\t<li>")}}}</li>