gui: Factor out duplicated code for executing and pasting syntax.
[pspp-builds.git] / src / ui / gui / executor.c
index 7b4d10cf9f3e06f59bf1439dd9891cc6a859e227..24b80db2443d3163ee5978ba02b8417341fac102 100644 (file)
 
 #include <config.h>
 
-#include "executor.h"
-#include "psppire-data-store.h"
-#include <data/lazy-casereader.h>
-#include <data/procedure.h>
-#include <libpspp/getl.h>
-#include <language/lexer/lexer.h>
-#include <language/command.h>
-#include <output/driver.h>
-#include "psppire-output-window.h"
+#include "ui/gui/executor.h"
+
+#include "data/lazy-casereader.h"
+#include "data/procedure.h"
+#include "language/command.h"
+#include "language/lexer/lexer.h"
+#include "language/syntax-string-source.h"
+#include "libpspp/cast.h"
+#include "libpspp/getl.h"
+#include "output/driver.h"
+#include "ui/gui/psppire-data-store.h"
+#include "ui/gui/psppire-output-window.h"
 
 extern struct dataset *the_dataset;
 extern struct source_stream *the_source_stream;
@@ -108,3 +111,19 @@ execute_syntax (struct getl_interface *sss)
 
   return retval;
 }
+
+/* Executes null-terminated string SYNTAX as syntax.
+   Returns SYNTAX. */
+gchar *
+execute_syntax_string (gchar *syntax)
+{
+  execute_const_syntax_string (syntax);
+  return syntax;
+}
+
+/* Executes null-terminated string SYNTAX as syntax. */
+void
+execute_const_syntax_string (const gchar *syntax)
+{
+  execute_syntax (create_syntax_string_source (syntax));
+}