absyntax_utils/spec_init_separator.cc
changeset 350 2c3c4dc34979
parent 279 c0453b7f99df
child 596 4efb11e44065
--- a/absyntax_utils/spec_init_separator.cc	Mon Jul 11 09:47:27 2011 +0100
+++ b/absyntax_utils/spec_init_separator.cc	Fri Jul 29 16:03:28 2011 +0100
@@ -176,5 +176,35 @@
   return NULL;
 }
 
+
+/* STRING '[' integer ']' 
+ * STRING ASSIGN single_byte_character_string
+ * STRING '[' integer ']' ASSIGN single_byte_character_string
+ */
+void *spec_init_sperator_c::visit(single_byte_string_spec_c *symbol) {
+  TRACE("spec_init_sperator_c::single_byte_string_spec_c");
+  switch (search_what) {
+    case search_spec: return symbol->string_spec;
+    case search_init: return symbol->single_byte_character_string;
+  }
+  ERROR; /* should never occur */
+  return NULL;
+}
+
+/* WSTRING '[' integer ']' 
+ * WSTRING ASSIGN double_byte_character_string
+ * WSTRING '[' integer ']' ASSIGN double_byte_character_string
+ */
+void *spec_init_sperator_c::visit(double_byte_string_spec_c *symbol) {
+  TRACE("spec_init_sperator_c::double_byte_string_spec_c");
+  switch (search_what) {
+    case search_spec: return symbol->string_spec;
+    case search_init: return symbol->double_byte_character_string;
+  }
+  ERROR; /* should never occur */
+  return NULL;
+}
+
+
 spec_init_sperator_c *spec_init_sperator_c ::class_instance = NULL;
 spec_init_sperator_c::search_what_t spec_init_sperator_c::search_what;