projects
/
pspp
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
refactoring
[pspp]
/
src
/
language
/
data-io
/
print-space.c
diff --git
a/src/language/data-io/print-space.c
b/src/language/data-io/print-space.c
index 9f27da80f495b396bfebebab7c210de952a593cc..b908927bdf6415438542a708f92050761575b9e0 100644
(file)
--- a/
src/language/data-io/print-space.c
+++ b/
src/language/data-io/print-space.c
@@
-27,7
+27,7
@@
#include "language/expressions/public.h"
#include "language/lexer/lexer.h"
#include "libpspp/message.h"
#include "language/expressions/public.h"
#include "language/lexer/lexer.h"
#include "libpspp/message.h"
-#include "output/
text-item
.h"
+#include "output/
driver
.h"
#include "gl/xalloc.h"
#include "gl/xalloc.h"
@@
-41,8
+41,7
@@
struct print_space_trns
struct expression *expr; /* Number of lines; NULL means 1. */
};
struct expression *expr; /* Number of lines; NULL means 1. */
};
-static trns_proc_func print_space_trns_proc;
-static trns_free_func print_space_trns_free;
+static const struct trns_class print_space_class;
int
cmd_print_space (struct lexer *lexer, struct dataset *ds)
int
cmd_print_space (struct lexer *lexer, struct dataset *ds)
@@
-77,7
+76,7
@@
cmd_print_space (struct lexer *lexer, struct dataset *ds)
if (lex_token (lexer) != T_ENDCMD)
{
if (lex_token (lexer) != T_ENDCMD)
{
- expr = expr_parse (lexer, ds,
EXPR_NUMBER
);
+ expr = expr_parse (lexer, ds,
VAL_NUMERIC
);
if (lex_token (lexer) != T_ENDCMD)
{
lex_error (lexer, _("expecting end of command"));
if (lex_token (lexer) != T_ENDCMD)
{
lex_error (lexer, _("expecting end of command"));
@@
-100,8
+99,7
@@
cmd_print_space (struct lexer *lexer, struct dataset *ds)
trns->writer = writer;
trns->expr = expr;
trns->writer = writer;
trns->expr = expr;
- add_transformation (ds,
- print_space_trns_proc, print_space_trns_free, trns);
+ add_transformation (ds, &print_space_class, trns);
fh_unref (handle);
return CMD_SUCCESS;
fh_unref (handle);
return CMD_SUCCESS;
@@
-112,7
+110,7
@@
error:
}
/* Executes a PRINT SPACE transformation. */
}
/* Executes a PRINT SPACE transformation. */
-static
in
t
+static
enum trns_resul
t
print_space_trns_proc (void *t_, struct ccase **c,
casenumber case_num UNUSED)
{
print_space_trns_proc (void *t_, struct ccase **c,
casenumber case_num UNUSED)
{
@@
-134,7
+132,7
@@
print_space_trns_proc (void *t_, struct ccase **c,
while (n--)
if (trns->writer == NULL)
while (n--)
if (trns->writer == NULL)
-
text_item_submit (text_item_create (TEXT_ITEM_BLANK_LINE, "")
);
+
output_log ("%s", ""
);
else
dfm_put_record (trns->writer, " ", 1); /* XXX */
else
dfm_put_record (trns->writer, " ", 1); /* XXX */
@@
-154,3
+152,9
@@
print_space_trns_free (void *trns_)
free (trns);
return ok;
}
free (trns);
return ok;
}
+
+static const struct trns_class print_space_class = {
+ .name = "PRINT SPACE",
+ .execute = print_space_trns_proc,
+ .destroy = print_space_trns_free,
+};