bionic (3) beh_debug.3.gz

Provided by: alliance_5.1.1-1.1build1_amd64 bug

NAME

       beh_debug - BEH structures displayer-debugger

SYNOPSYS

       void beh_debug (pnt, type)
       void *pnt;
       char *type;

PARAMETERS

       pnt       pointer of the structure to be displayed

       type      name  of  the structure to be displayed. type can be any of "befig", "beout", "bereg", "bemsg",
                 "bepor", "begen", "berin", "bebus", "beaux", "bebux",  "biabl",  "binode",  "beder",  "bequad",
                 "abl", "integer", "long", "short", "character", "ptype", "chain"

DESCRIPTION

       When called, beh_debug() displaies the structure pointed by pnt then, prints the line:

              COMMAND   >>

       and  waits  for a command being entered by the user. If pnt is a NULL pointer or type doesn´t represent a
       known structure, beh_debug() exits without making any action.

       To display the structure, beh_debug()  prints  a  line  per  field.  Fields  containing  immediate  value
       (integer, character, string, ...) are displayed in the following form:

              name_of_the_field  :  value_of_the_field

       Fields  containing a pointer are marked by the symbol ->. If the field contains a NULL pointer, the field
       is displayed as:

              -> name_of_the_field  :

       In the other case, beh_debug() prints :

              -> name_of_the_field  :  available

       Two kinds of command are accepted by the displayer.

       A command can be the name of a field containing a pointer. The command is accepted only if the pointer is
       not  a NULL pointer (field displayed as "available"). When the debugger receives such a command, it first
       pushes the current structure on its stack then, displaies the structure pointed by the named field.

       The second kind of commands are predefined commands :

              _exit     to exit from the debugger

              _up       to return to the previous structure

              _stop     to put a stop mark on the current structure

              _top      to return to the first structure (pointed by pnt)

              _back     to return to the last structure marked with a stop mark

              _save     to save the current structure in a static table. At most 10  structures  may  be  saved.
                        (example : "_save 1" saves the current structure in the entry number ! of the table)

              _jump     to  jump  to  a saved structure (example : "_jump 1" dislpaies the etructure save in the
                        entry number 1 of the table).

              _display  displaies a field under a given format. (example : "_display next integer" displaies the
                        field named next as an integer).

       In addition to these commands, the command . (dot) can be used to repete the last command.

EXAMPLE

       #include <beh109.h>
       struct beout *beout_pnt;

       beh_debug (beout_pnt , "beout");

NOTES

       beh_debug()  uses  an internal stack. The message "stack overflow" is printed if too many structures have
       been pushed on the stack.

SEE ALSO

       beh(3)