summaryrefslogtreecommitdiff
path: root/MLKDynamicContext.m
diff options
context:
space:
mode:
authorMatthias Andreas Benkard <matthias@benkard.de>2008-07-01 17:08:10 +0200
committerMatthias Andreas Benkard <matthias@benkard.de>2008-07-01 17:08:10 +0200
commit2ce5b7ded1c689548e9becb6fb39284ea68a1941 (patch)
treea872ad94aa2e5b4b83dd862959490e0fa3548b8d /MLKDynamicContext.m
parent786ddbd4cea2fa9808463a5b2ff23dd40b994846 (diff)
Reader: Add support for string literals.
Diffstat (limited to 'MLKDynamicContext.m')
-rw-r--r--MLKDynamicContext.m8
1 files changed, 6 insertions, 2 deletions
diff --git a/MLKDynamicContext.m b/MLKDynamicContext.m
index a2bc151..f0d25b9 100644
--- a/MLKDynamicContext.m
+++ b/MLKDynamicContext.m
@@ -31,6 +31,7 @@
#import "MLKPackage.h"
#import "MLKParenReader.h"
#import "MLKReadtable.h"
+#import "MLKStringReader.h"
#import "MLKSymbol.h"
#import "MLKInteger.h"
#import "runtime-compatibility.h"
@@ -144,7 +145,6 @@ static MLKDynamicContext *global_context;
[readtable setSyntaxType:MULTI_ESCAPE forCharacter:'|'];
// [readtable setSyntaxType:TERMINATING_MACRO forCharacter:';'];
- // [readtable setSyntaxType:TERMINATING_MACRO forCharacter:'"'];
// [readtable setSyntaxType:NONTERMINATING_MACRO forCharacter:'#'];
// [readtable setSyntaxType:TERMINATING_MACRO forCharacter:'\''];
// [readtable setSyntaxType:TERMINATING_MACRO forCharacter:'`'];
@@ -153,10 +153,14 @@ static MLKDynamicContext *global_context;
[readtable setSyntaxType:SINGLE_ESCAPE forCharacter:'\\'];
[readtable setSyntaxType:TERMINATING_MACRO forCharacter:'('];
- [readtable setMacroFunction:[[MLKParenReader alloc] init]
+ [readtable setMacroFunction:AUTORELEASE([[MLKParenReader alloc] init])
forCharacter:'('];
[readtable setSyntaxType:TERMINATING_MACRO forCharacter:')'];
+ [readtable setSyntaxType:TERMINATING_MACRO forCharacter:'"'];
+ [readtable setMacroFunction:AUTORELEASE([[MLKStringReader alloc] init])
+ forCharacter:'"'];
+
for (ch = '0'; ch <= '9'; ch++)
{
[readtable setSyntaxType:CONSTITUENT forCharacter:ch];