Tcl Library Procedures

NAME

Tcl_NewBooleanObj, Tcl_SetBooleanObj, Tcl_GetBooleanFromObj - manipulate boolean Tcl objects

SYNOPSIS

#include <tcl.h>

Tcl_Obj *
Tcl_NewBooleanObj(boolValue)

Tcl_SetBooleanObj(objPtr, boolValue)

int
Tcl_GetBooleanFromObj(interp, objPtr, boolPtr)

ARGUMENTS

int boolValue (in)
Integer value used to initialize or set a boolean object. If the integer is nonzero, the boolean object is set to 1; otherwise the boolean object is set to 0.

Tcl_Obj *objPtr (in/out)
For Tcl_SetBooleanObj, this points to the object to be converted to boolean type. For Tcl_GetBooleanFromObj, this refers to the object from which to get a boolean value; if objPtr does not already point to a boolean object, an attempt will be made to convert it to one.

Tcl_Interp *interp (in/out)
If an error occurs during conversion, an error message is left in interp->objResult unless interp is NULL.

int *boolPtr (out)
Points to place where Tcl_GetBooleanFromObj stores the boolean value (0 or 1) obtained from objPtr.

DESCRIPTION

These procedures are used to create, modify, and read boolean Tcl objects from C code. Tcl_NewBooleanObj and Tcl_SetBooleanObj will create a new object of boolean type or modify an existing object to have boolean type. Both of these procedures set the object to have the boolean value (0 or 1) specified by boolValue; if boolValue is nonzero, the object is set to 1, otherwise to 0. Tcl_NewBooleanObj returns a pointer to a newly created object with reference count 1. Both procedures set the object's type to be boolean (i.e., they store the address of the boolean Tcl_ObjType structure in the object's typePtr member) and assign the boolean value to the object's internal representation intValue member. Tcl_SetBooleanObj invalidates any old string representation and, if the object is not already a boolean object, frees any old internal representation.

Tcl_GetBooleanFromObj attempts to return a boolean value from the Tcl object objPtr. If the object is not already a boolean object, it will attempt to convert it to one. If an error occurs during conversion, it returns TCL_ERROR and leaves an error message in interp->objResult unless interp is NULL. This message object can be retrieved using Tcl_GetObjResult. Otherwise, Tcl_GetBooleanFromObj returns TCL_OK and stores the boolean value in the address given by boolPtr. If the object is not already a boolean object, the conversion will free any old internal representation.

SEE ALSO

Tcl_NewObj, Tcl_DecrRefCount, Tcl_IncrRefCount, Tcl_GetObjResult

KEYWORDS

boolean, boolean object, boolean type, internal representation, object, object type, string representation

Last change: 8.0

[ tcl8.0a1 | tk8.0a1 | X-ref ]

Copyright © 1989-1994 The Regents of the University of California.
Copyright © 1994-1996 Sun Microsystems, Inc.