diff options
author | William Joye <wjoye@cfa.harvard.edu> | 2016-12-21 22:13:18 (GMT) |
---|---|---|
committer | William Joye <wjoye@cfa.harvard.edu> | 2016-12-21 22:13:18 (GMT) |
commit | 07e464099b99459d0a37757771791598ef3395d9 (patch) | |
tree | 4ba7d8aad13735e52f59bdce7ca5ba3151ebd7e3 /tcl8.6/doc/IntObj.3 | |
parent | deb3650e37f26f651f280e480c4df3d7dde87bae (diff) | |
download | blt-07e464099b99459d0a37757771791598ef3395d9.zip blt-07e464099b99459d0a37757771791598ef3395d9.tar.gz blt-07e464099b99459d0a37757771791598ef3395d9.tar.bz2 |
new subtree for tcl/tk
Diffstat (limited to 'tcl8.6/doc/IntObj.3')
-rw-r--r-- | tcl8.6/doc/IntObj.3 | 152 |
1 files changed, 0 insertions, 152 deletions
diff --git a/tcl8.6/doc/IntObj.3 b/tcl8.6/doc/IntObj.3 deleted file mode 100644 index dc62642..0000000 --- a/tcl8.6/doc/IntObj.3 +++ /dev/null @@ -1,152 +0,0 @@ -'\" -'\" Copyright (c) 1996-1997 Sun Microsystems, Inc. -'\" -'\" See the file "license.terms" for information on usage and redistribution -'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. -'\" -.TH Tcl_IntObj 3 8.5 Tcl "Tcl Library Procedures" -.so man.macros -.BS -.SH NAME -Tcl_NewIntObj, Tcl_NewLongObj, Tcl_NewWideIntObj, Tcl_SetIntObj, Tcl_SetLongObj, Tcl_SetWideIntObj, Tcl_GetIntFromObj, Tcl_GetLongFromObj, Tcl_GetWideIntFromObj, Tcl_NewBignumObj, Tcl_SetBignumObj, Tcl_GetBignumFromObj, Tcl_TakeBignumFromObj \- manipulate Tcl values as integers -.SH SYNOPSIS -.nf -\fB#include <tcl.h>\fR -.sp -Tcl_Obj * -\fBTcl_NewIntObj\fR(\fIintValue\fR) -.sp -Tcl_Obj * -\fBTcl_NewLongObj\fR(\fIlongValue\fR) -.sp -Tcl_Obj * -\fBTcl_NewWideIntObj\fR(\fIwideValue\fR) -.sp -\fBTcl_SetIntObj\fR(\fIobjPtr, intValue\fR) -.sp -\fBTcl_SetLongObj\fR(\fIobjPtr, longValue\fR) -.sp -\fBTcl_SetWideIntObj\fR(\fIobjPtr, wideValue\fR) -.sp -int -\fBTcl_GetIntFromObj\fR(\fIinterp, objPtr, intPtr\fR) -.sp -int -\fBTcl_GetLongFromObj\fR(\fIinterp, objPtr, longPtr\fR) -.sp -int -\fBTcl_GetWideIntFromObj\fR(\fIinterp, objPtr, widePtr\fR) -.sp -.sp -\fB#include <tclTomMath.h>\fR -.sp -Tcl_Obj * -\fBTcl_NewBignumObj\fR(\fIbigValue\fR) -.sp -\fBTcl_SetBignumObj\fR(\fIobjPtr, bigValue\fR) -.sp -int -\fBTcl_GetBignumFromObj\fR(\fIinterp, objPtr, bigValue\fR) -.sp -int -\fBTcl_TakeBignumFromObj\fR(\fIinterp, objPtr, bigValue\fR) -.sp -int -\fBTcl_InitBignumFromDouble\fR(\fIinterp, doubleValue, bigValue\fR) -.SH ARGUMENTS -.AS Tcl_WideInt doubleValue in/out -.AP int intValue in -Integer value used to initialize or set a Tcl value. -.AP long longValue in -Long integer value used to initialize or set a Tcl value. -.AP Tcl_WideInt wideValue in -Wide integer value used to initialize or set a Tcl value. -.AP Tcl_Obj *objPtr in/out -For \fBTcl_SetIntObj\fR, \fBTcl_SetLongObj\fR, \fBTcl_SetWideIntObj\fR, -and \fBTcl_SetBignumObj\fR, this points to the value in which to store an -integral value. For \fBTcl_GetIntFromObj\fR, \fBTcl_GetLongFromObj\fR, -\fBTcl_GetWideIntFromObj\fR, \fBTcl_GetBignumFromObj\fR, and -\fBTcl_TakeBignumFromObj\fR, this refers to the value from which -to retrieve an integral value. -.AP Tcl_Interp *interp in/out -When non-NULL, an error message is left here when integral value -retrieval fails. -.AP int *intPtr out -Points to place to store the integer value retrieved from \fIobjPtr\fR. -.AP long *longPtr out -Points to place to store the long integer value retrieved from \fIobjPtr\fR. -.AP Tcl_WideInt *widePtr out -Points to place to store the wide integer value retrieved from \fIobjPtr\fR. -.AP mp_int *bigValue in/out -Points to a multi-precision integer structure declared by the LibTomMath -library. -.AP double doubleValue in -Double value from which the integer part is determined and -used to initialize a multi-precision integer value. -.BE -.SH DESCRIPTION -.PP -These procedures are used to create, modify, and read Tcl values -that hold integral values. -.PP -The different routines exist to accommodate different integral types in C -with which values might be exchanged. The C integral types for which Tcl -provides value exchange routines are \fBint\fR, \fBlong int\fR, -\fBTcl_WideInt\fR, and \fBmp_int\fR. The \fBint\fR and \fBlong int\fR types -are provided by the C language standard. The \fBTcl_WideInt\fR type is a -typedef defined to be whatever signed integral type covers at least the -64-bit integer range (-9223372036854775808 to 9223372036854775807). Depending -on the platform and the C compiler, the actual type might be -\fBlong int\fR, \fBlong long int\fR, \fBint64\fR, or something else. -The \fBmp_int\fR type is a multiple-precision integer type defined -by the LibTomMath multiple-precision integer library. -.PP -The \fBTcl_NewIntObj\fR, \fBTcl_NewLongObj\fR, \fBTcl_NewWideIntObj\fR, -and \fBTcl_NewBignumObj\fR routines each create and return a new -Tcl value initialized to the integral value of the argument. The -returned Tcl value is unshared. -.PP -The \fBTcl_SetIntObj\fR, \fBTcl_SetLongObj\fR, \fBTcl_SetWideIntObj\fR, -and \fBTcl_SetBignumObj\fR routines each set the value of an existing -Tcl value pointed to by \fIobjPtr\fR to the integral value provided -by the other argument. The \fIobjPtr\fR argument must point to an -unshared Tcl value. Any attempt to set the value of a shared Tcl value -violates Tcl's copy-on-write policy. Any existing string representation -or internal representation in the unshared Tcl value will be freed -as a consequence of setting the new value. -.PP -The \fBTcl_GetIntFromObj\fR, \fBTcl_GetLongFromObj\fR, -\fBTcl_GetWideIntFromObj\fR, \fBTcl_GetBignumFromObj\fR, and -\fBTcl_TakeBignumFromObj\fR routines attempt to retrieve an integral -value of the appropriate type from the Tcl value \fIobjPtr\fR. If the -attempt succeeds, then \fBTCL_OK\fR is returned, and the value is -written to the storage provided by the caller. The attempt might -fail if \fIobjPtr\fR does not hold an integral value, or if the -value exceeds the range of the target type. If the attempt fails, -then \fBTCL_ERROR\fR is returned, and if \fIinterp\fR is non-NULL, -an error message is left in \fIinterp\fR. The \fBTcl_ObjType\fR -of \fIobjPtr\fR may be changed to make subsequent calls to the -same routine more efficient. Unlike the other functions, -\fBTcl_TakeBignumFromObj\fR may set the content of the Tcl value -\fIobjPtr\fR to an empty string in the process of retrieving the -multiple-precision integer value. -.PP -The choice between \fBTcl_GetBignumFromObj\fR and -\fBTcl_TakeBignumFromObj\fR is governed by how the caller will -continue to use \fIobjPtr\fR. If after the \fBmp_int\fR value -is retrieved from \fIobjPtr\fR, the caller will make no more -use of \fIobjPtr\fR, then using \fBTcl_TakeBignumFromObj\fR -permits Tcl to detect when an unshared \fIobjPtr\fR permits the -value to be moved instead of copied, which should be more efficient. -If anything later in the caller requires -\fIobjPtr\fR to continue to hold the same value, then -\fBTcl_GetBignumFromObj\fR must be chosen. -.PP -The \fBTcl_InitBignumFromDouble\fR routine is a utility procedure -that extracts the integer part of \fIdoubleValue\fR and stores that -integer value in the \fBmp_int\fR value \fIbigValue\fR. -.SH "SEE ALSO" -Tcl_NewObj, Tcl_DecrRefCount, Tcl_IncrRefCount, Tcl_GetObjResult -.SH KEYWORDS -integer, integer value, integer type, internal representation, value, -value type, string representation |