lexer: Reimplement for better testability and internationalization.
[pspp-builds.git] / src / data / mrset.h
index c531db7a016791227c6bafba44e99e1ba9240a25..9971924e0d39d2d9c1adb044e2c033d39b9ab77f 100644 (file)
@@ -61,8 +61,8 @@ enum mrset_md_cat_source
 /* A multiple response set. */
 struct mrset
   {
-    char *name;                 /* Name for syntax.  Always begins with "$". */
-    char *label;                /* Human-readable label for group. */
+    char *name;                 /* UTF-8 encoded name beginning with "$". */
+    char *label;                /* Human-readable UTF-8 label for group. */
     enum mrset_type type;       /* Group type. */
     struct variable **vars;     /* Constituent variables. */
     size_t n_vars;              /* Number of constituent variables. */
@@ -77,6 +77,9 @@ struct mrset
 struct mrset *mrset_clone (const struct mrset *);
 void mrset_destroy (struct mrset *);
 
+bool mrset_is_valid_name (const char *name, const char *dict_encoding,
+                          bool issue_error);
+
 bool mrset_ok (const struct mrset *, const struct dictionary *);
 
 #endif /* data/mrset.h */