pike.git / src / pike_types.h

version» Context lines:

pike.git/src/pike_types.h:76:   enum pt_remap_flags    {    PT_FLAG_REMAP_SWAP_MARKERS = 0x01, /* Swap A & B */    PT_FLAG_REMAP_BOTH_MARKERS = 0x02, /* Look in both sets. */    PT_FLAG_REMAP_BOTH_MARKERS_AND = 0x02, /* And both markers */    PT_FLAG_REMAP_BOTH_MARKERS_OR = 0x06, /* Or both markers */    PT_FLAG_REMAP_BOTH_MARKERS_MASK = 0x06, /* Mask for the above */    };      /* +  * Flags used by intersect_types() and subtract_types(). +  */ + enum pt_cmp_flags +  { +  PT_FLAG_CMP_VOIDABLE = 0x0100, /* Type may be void */ +  }; +  + /*    * Flags used by low_match_types().    */   #define A_EXACT 1   #define B_EXACT 2   #define NO_MAX_ARGS 4   #define NO_SHORTCUTS 8      #define TYPE_GROUPING      /*
pike.git/src/pike_types.h:297:   void low_describe_type(struct string_builder *s, struct pike_type *type);   struct pike_string *describe_type(struct pike_type *type);   TYPE_T compile_type_to_runtime_type(struct pike_type *s);   int deprecated_typep(struct pike_type *t);   int get_int_type_range(struct pike_type *t, INT_TYPE *range);   struct pike_type *or_pike_types(struct pike_type *a,    struct pike_type *b,    int zero_implied);   struct pike_type *and_pike_types(struct pike_type *a,    struct pike_type *b); + struct pike_type *subtract_types(struct pike_type *a, +  struct pike_type *b, +  enum pt_cmp_flags aflags, +  enum pt_cmp_flags bflags, +  enum pt_remap_flags remap_flags); + struct pike_type *intersect_types(struct pike_type *a, +  struct pike_type *b, +  enum pt_cmp_flags aflags, +  enum pt_cmp_flags bflags, +  enum pt_remap_flags remap_flags);   int strict_check_call(struct pike_type *fun_type, struct pike_type *arg_type);   int check_soft_cast(struct pike_type *to, struct pike_type *from);   int match_types(struct pike_type *a,struct pike_type *b);   int pike_types_le(struct pike_type *a, struct pike_type *b);   int check_variant_overload(struct pike_type *a, struct pike_type *b);   struct pike_type *index_type(struct pike_type *type,    struct pike_type *type_of_index,    node *n);   struct pike_type *range_type(struct pike_type *type,    struct pike_type *index1_type,