Grammer loading works and test file can lex itself. Got rid of regex memory saftey for speed, will reintroduce next

This commit is contained in:
Nathan Braswell
2015-07-06 13:48:19 -04:00
parent 501331e37b
commit 92f5c63c9a
7 changed files with 61 additions and 10 deletions

View File

@@ -1,11 +1,19 @@
import io:*
import grammer:*
import lexer:*
import string:*
import util:*
fun main():int {
var a = load_grammer(string("../krakenGrammer.kgm"))
var a = load_grammer(read_file(string("../krakenGrammer.kgm")))
/*var a = load_grammer(string("grammer.kgm"))*/
println(a.to_string())
var lex = lexer(a.regexs)
lex.set_input(read_file(string("test_grammer.krak")))
/*lex.set_input(string("ccdahas spacedhas*/
/*returndaaaaaaaaaaaaaa"))*/
println("woo lexing:")
range(80).for_each(fun(i: int) { println(lex.next().to_string()); } )
return 0
}

View File

@@ -26,6 +26,14 @@ find test
0
1
2
contains test
false
true
true
true
false
add_unique test
1 2 3 4
set, []=, and delete test
4
8

View File

@@ -115,6 +115,20 @@ fun main(): int {
println(multipleFindTest.find(2))
println(multipleFindTest.find(3))
println("contains test")
println(multipleFindTest.contains(0))
println(multipleFindTest.contains(1))
println(multipleFindTest.contains(2))
println(multipleFindTest.contains(3))
println(multipleFindTest.contains(4))
println("add_unique test")
multipleFindTest.add_unique(1)
multipleFindTest.add_unique(4)
multipleFindTest.add_unique(4)
multipleFindTest.for_each( fun(i:int) { print(" "); print(i); } )
println()
println("set, []=, and delete test")
var setTest = vector(4,5,6)
setTest.add(7)