Files
c3c/test/test_suite/stdlib/priorityqueue.c3t

33 lines
471 B
C

// #target: macos-x64
module test;
import std::io;
import std::math;
import std::priorityqueue;
define FooPriorityQueue = PriorityQueue<Foo>;
fn void main()
{
FooPriorityQueue agh;
agh.max = true;
agh.push(Foo { 3 });
agh.push(Foo { 101 });
agh.push(Foo { 10 });
while (try f = agh.pop()) io::printf("%s\n", f.x);
}
struct Foo
{
int x;
}
fn bool Foo.less(Foo* x, Foo y) @inline
{
return x.x < y.x;
}
// #expect: test.ll
%PriorityQueue = type { %List, i8 }