# #include "di_tree.h"

This page has information from files di_tree.h and di_tree.c.

## Contents

- Public Routines
- Public Definitions
- Introduction

## Public Routines in File di_tree.c

#### Index

back_feature_subsume | fprint_di_tree_mem | mega_sub_calls | p_di_tree_mem
di_tree_delete | free_di_tree | nonunit_bsub_tests | zap_di_tree
di_tree_insert | get_di_tree | nonunit_fsub_tests |
forward_feature_subsume | init_di_tree | p_di_tree |

#### Details

    Plist back_feature_subsume(Topform c, Di_tree root);

    BOOL di_tree_delete(Ilist vec, Di_tree node, void *datum);

    void di_tree_insert(Ilist vec, Di_tree node, void *datum);

    Topform forward_feature_subsume(Topform d, Di_tree root);

    void fprint_di_tree_mem(FILE *fp, BOOL heading);

This routine prints (to FILE *fp) memory usage statistics for data types associated with the di_tree package. The Boolean argument heading tells whether to print a heading on the table.

    void free_di_tree(Di_tree p);

    Di_tree get_di_tree(void);

    Di_tree init_di_tree(void);

This routine allocates and returns an empty integer-vector discrimination index.

    unsigned mega_sub_calls(void);

    int nonunit_bsub_tests(void);

    int nonunit_fsub_tests(void);

    void p_di_tree(Ilist vec, Di_tree node, int depth);

    void p_di_tree_mem(void);

This routine prints (to stdout) memory usage statistics for data types associated with the di_tree package.

    void zap_di_tree(Di_tree node, int depth);

## Public Definitions in File di_tree.h

    typedef struct di_tree * Di_tree;

    struct di_tree {       /* node in an integer vector discrimination tree */
      int label;           /* label of node */
      Di_tree   next;      /* sibling */
      union {
        Di_tree kids;      /* for internal nodes */
        Plist data;        /* for leaves */
      } u;
    };

## Introduction