mirror of
https://github.com/MorizzG/MLox.git
synced 2025-12-06 04:22:41 +00:00
added lox test files
This commit is contained in:
parent
821f5c62bc
commit
0f3d0a15f0
268 changed files with 7497 additions and 3 deletions
3
lox.t/class/empty.lox
Normal file
3
lox.t/class/empty.lox
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
class Foo {}
|
||||
|
||||
print Foo; // expect: Foo
|
||||
1
lox.t/class/inherit_self.lox
Normal file
1
lox.t/class/inherit_self.lox
Normal file
|
|
@ -0,0 +1 @@
|
|||
class Foo < Foo {} // Error at 'Foo': A class can't inherit from itself.
|
||||
22
lox.t/class/inherited_method.lox
Normal file
22
lox.t/class/inherited_method.lox
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
class Foo {
|
||||
inFoo() {
|
||||
print "in foo";
|
||||
}
|
||||
}
|
||||
|
||||
class Bar < Foo {
|
||||
inBar() {
|
||||
print "in bar";
|
||||
}
|
||||
}
|
||||
|
||||
class Baz < Bar {
|
||||
inBaz() {
|
||||
print "in baz";
|
||||
}
|
||||
}
|
||||
|
||||
var baz = Baz();
|
||||
baz.inFoo(); // expect: in foo
|
||||
baz.inBar(); // expect: in bar
|
||||
baz.inBaz(); // expect: in baz
|
||||
8
lox.t/class/local_inherit_other.lox
Normal file
8
lox.t/class/local_inherit_other.lox
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
class A {}
|
||||
|
||||
fun f() {
|
||||
class B < A {}
|
||||
return B;
|
||||
}
|
||||
|
||||
print f(); // expect: B
|
||||
4
lox.t/class/local_inherit_self.lox
Normal file
4
lox.t/class/local_inherit_self.lox
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
class Foo < Foo {} // Error at 'Foo': A class can't inherit from itself.
|
||||
}
|
||||
// [c line 5] Error at end: Expect '}' after block.
|
||||
9
lox.t/class/local_reference_self.lox
Normal file
9
lox.t/class/local_reference_self.lox
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
class Foo {
|
||||
returnSelf() {
|
||||
return Foo;
|
||||
}
|
||||
}
|
||||
|
||||
print Foo().returnSelf(); // expect: Foo
|
||||
}
|
||||
7
lox.t/class/reference_self.lox
Normal file
7
lox.t/class/reference_self.lox
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
class Foo {
|
||||
returnSelf() {
|
||||
return Foo;
|
||||
}
|
||||
}
|
||||
|
||||
print Foo().returnSelf(); // expect: Foo
|
||||
Loading…
Add table
Add a link
Reference in a new issue