ast: factorize `n_string` to `AStringFormExpr`
authorJean Privat <jean@pryen.org>
Fri, 19 Jul 2013 16:24:55 +0000 (12:24 -0400)
committerJean Privat <jean@pryen.org>
Sat, 20 Jul 2013 11:28:18 +0000 (07:28 -0400)
Signed-off-by: Jean Privat <jean@pryen.org>

src/literal.nit
src/parser/parser_nodes.nit

index 5d69035..67f1120 100644 (file)
@@ -103,16 +103,7 @@ redef class AStringFormExpr
        var value: nullable String
        redef fun accept_literal(v)
        do
-               var txt
-               if self isa AStringExpr then
-                       txt = self.n_string.text
-               else if self isa AStartStringExpr then
-                       txt = self.n_string.text
-               else if self isa AMidStringExpr then
-                       txt = self.n_string.text
-               else if self isa AEndStringExpr then
-                       txt = self.n_string.text
-               else abort
+               var txt = self.n_string.text
                self.value = txt.substring(1, txt.length-2).unescape_nit
        end
 end
index 17f8558..7f6b6b2 100644 (file)
@@ -1085,22 +1085,19 @@ class ACharExpr
 end
 abstract class AStringFormExpr
        super AExpr
+    readable var _n_string: Token
 end
 class AStringExpr
        super AStringFormExpr
-    readable var _n_string: TString
 end
 class AStartStringExpr
        super AStringFormExpr
-    readable var _n_string: TStartString
 end
 class AMidStringExpr
        super AStringFormExpr
-    readable var _n_string: TMidString
 end
 class AEndStringExpr
        super AStringFormExpr
-    readable var _n_string: TEndString
 end
 class ASuperstringExpr
        super AExpr