From efdd8b44b2fcc7fcf4f7ba37ac4045793be8fecd Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Sun, 11 Jul 2010 12:03:52 +0200 Subject: Many API improvements and more bugfixes --- src/Parse.vala | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'src/Parse.vala') diff --git a/src/Parse.vala b/src/Parse.vala index 18741cc..79b4cea 100644 --- a/src/Parse.vala +++ b/src/Parse.vala @@ -1,5 +1,6 @@ namespace Eva { - internal static Term? parse(string str, ref va_list va) { + internal static Term? parse(string str, ...) { + va_list va = va_list(); string s = str.chomp(); if(s.length == 0) @@ -305,11 +306,11 @@ namespace Eva { switch(c) { case ']': - return new List(head); + return new Cons(head); case ',': - return new List(head, parse_list_tail(ref str, ref va)); + return new Cons(head, parse_list_tail(ref str, ref va)); case '|': - Term ret = new List(head, parse_term(ref str, ref va)); + Term ret = new Cons(head, parse_term(ref str, ref va)); str = str.chug(); if(str.length == 0 || str.get_char() != ']') @@ -417,6 +418,8 @@ namespace Eva { case 'f': case 'd': return new Double(va.arg()); + case 'w': + return va.arg(); default: return null; } -- cgit v1.2.3