FUNBIABL(3)

NAME

beh_addbiabl , beh_delbiabl , beh_frebiabl

SYNOPSYS

struct biabl *beh_addbiabl (list, label, cond, value)
struct biabl *list;
char *label;
struct chain *cond;
struct chain *value;
struct biabl *beh_delbiabl (list, pnt, mode)
struct biabl *list;
struct biabl *pnt;
char mode;
void beh_frebiabl (list)
struct biabl *list;

PARAMETERS

list
    pointer of a list of biabl structures

label
    driver's label

cond
    abl representing the expression of the connection condition of the driver

value
    abl representing the expression of the value emitted by the driver

pnt pointer of the biabl structure to be removed from the list

mode
    recursive mode (Y or N)

DESCRIPTION

A biabl is a data structure representing a one-bit deconnectable VHDL driver.

beh_addbiabl() adds a biabl structure at the top of a list of biabl structures. cond is a pointer on the abl representing the condition that makes the driver active. value is the abl of the expression of the value produced by the driver. label is the identification of the driver. The label registred in the biabl structure is produced by namealloc(). The function returns the pointer of the new list. No checks are made by this function.

beh_delbiabl() deletes a biabl structure (pointed by pnt) from a list of biabl structures. The function returns the pointer of the new list. No action is made if the structure pointed by pnt doesn't belong to the list.

beh_frebiabl() deletes a list of biabl structures (pointed by list). No action is made if list is an empty list (NULL pointer). No checks are made by this function. If mode is set to 'Y' all objects (abl) pointed by the biabl will also be deleted. If mode is set to 'N' and there is any object (abl) pointed by the structure a warning message is printed on the standard error output.

EXAMPLE

#include <beh108.h>
struct biabl *list;
list = beh_addbiabl (list, "write_reg", NULL, NULL);

SEE ALSO

beh(3), biabl(3)