/[pspp]/pspp/src/var.h
ViewVC logotype

Diff of /pspp/src/var.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.33 by blp, Sun Jul 31 21:42:46 2005 UTC revision 1.34 by blp, Sun Aug 7 04:39:28 2005 UTC
# Line 25  Line 25 
25  #include "config.h"  #include "config.h"
26  #include <stdbool.h>  #include <stdbool.h>
27  #include "format.h"  #include "format.h"
28    #include "missing-values.h"
29  #include "val.h"  #include "val.h"
30    
   
   
31  /* Script variables. */  /* Script variables. */
32    
33  /* Variable type. */  /* Variable type. */
# Line 39  enum Line 38  enum
38                                     (STRING is pre-empted by lexer.h.) */                                     (STRING is pre-empted by lexer.h.) */
39    };    };
40    
 /* Types of missing values.  Order is significant, see  
    mis-val.c:parse_numeric(), sfm-read.c, sfm-write.c,  
    sysfile-info.c:cmd_sysfile_info(), mis-val.c:copy_missing_values(),  
    pfm-read.c:read_variables(), pfm-write.c:write_variables(),  
    apply-dict.c:cmd_apply_dictionary(), and more (?). */  
 enum  
   {  
     MISSING_NONE,               /* No user-missing values. */  
     MISSING_1,                  /* One user-missing value. */  
     MISSING_2,                  /* Two user-missing values. */  
     MISSING_3,                  /* Three user-missing values. */  
     MISSING_RANGE,              /* [a,b]. */  
     MISSING_LOW,                /* (-inf,a]. */  
     MISSING_HIGH,               /* (a,+inf]. */  
     MISSING_RANGE_1,            /* [a,b], c. */  
     MISSING_LOW_1,              /* (-inf,a], b. */  
     MISSING_HIGH_1,             /* (a,+inf), b. */  
     MISSING_COUNT  
   };  
   
   
41  /* A variable's dictionary entry.  */  /* A variable's dictionary entry.  */
42  struct variable  struct variable
43    {    {
# Line 75  struct variable Line 53  struct variable
53      int index;                  /* Dictionary index. */      int index;                  /* Dictionary index. */
54    
55      /* Missing values. */      /* Missing values. */
56      int miss_type;              /* One of the MISSING_* constants. */      struct missing_values miss; /* Missing values. */
     union value missing[3];     /* User-missing value. */  
57    
58      /* Display formats. */      /* Display formats. */
59      struct fmt_spec print;      /* Default format for PRINT. */      struct fmt_spec print;      /* Default format for PRINT. */
# Line 178  extern int FILTER_before_TEMPORARY; Line 155  extern int FILTER_before_TEMPORARY;
155    
156  void cancel_temporary (void);  void cancel_temporary (void);
157    
 /* Functions. */  
   
158  struct ccase;  struct ccase;
159  void dump_split_vars (const struct ccase *);  void dump_split_vars (const struct ccase *);
 typedef int (* is_missing_func )(const union value *, const struct variable *);  
   
 int is_num_user_missing (double, const struct variable *);  
 int is_str_user_missing (const unsigned char[], const struct variable *);  
 int is_missing (const union value *, const struct variable *);  
 int is_system_missing (const union value *, const struct variable *);  
 int is_user_missing (const union value *, const struct variable *);  
 void copy_missing_values (struct variable *dest, const struct variable *src);  
160    
161  /* Transformations. */  /* Transformations. */
162    

Legend:
Removed from v.1.33  
changed lines
  Added in v.1.34

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26