mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 20:00:19 +02:00
Add scm_from_ptrdiff_t and scm_to_ptrdiff_t.
* libguile/numbers.h (scm_from_ptrdiff_t, scm_to_ptrdiff_t): New macros (function aliases). * doc/ref/api-data.texi: Add docs.
This commit is contained in:
parent
bcc7e238c9
commit
7facc08a80
2 changed files with 18 additions and 3 deletions
|
@ -1,7 +1,7 @@
|
|||
@c -*-texinfo-*-
|
||||
@c This is part of the GNU Guile Reference Manual.
|
||||
@c Copyright (C) 1996, 1997, 2000, 2001, 2002, 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013
|
||||
@c Free Software Foundation, Inc.
|
||||
@c Copyright (C) 1996, 1997, 2000, 2001, 2002, 2003, 2004, 2006, 2007,
|
||||
@c 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
|
||||
@c See the file guile.texi for copying conditions.
|
||||
|
||||
@node Simple Data Types
|
||||
|
@ -414,6 +414,7 @@ function will always succeed and will always return an exact number.
|
|||
@deftypefnx {C Function} {unsigned long long} scm_to_ulong_long (SCM x)
|
||||
@deftypefnx {C Function} size_t scm_to_size_t (SCM x)
|
||||
@deftypefnx {C Function} ssize_t scm_to_ssize_t (SCM x)
|
||||
@deftypefnx {C Function} scm_t_ptrdiff scm_to_ptrdiff_t (SCM x)
|
||||
@deftypefnx {C Function} scm_t_int8 scm_to_int8 (SCM x)
|
||||
@deftypefnx {C Function} scm_t_uint8 scm_to_uint8 (SCM x)
|
||||
@deftypefnx {C Function} scm_t_int16 scm_to_int16 (SCM x)
|
||||
|
@ -447,6 +448,7 @@ the corresponding types are.
|
|||
@deftypefnx {C Function} SCM scm_from_ulong_long (unsigned long long x)
|
||||
@deftypefnx {C Function} SCM scm_from_size_t (size_t x)
|
||||
@deftypefnx {C Function} SCM scm_from_ssize_t (ssize_t x)
|
||||
@deftypefnx {C Function} SCM scm_from_ptrdiff_t (scm_t_ptrdiff x)
|
||||
@deftypefnx {C Function} SCM scm_from_int8 (scm_t_int8 x)
|
||||
@deftypefnx {C Function} SCM scm_from_uint8 (scm_t_uint8 x)
|
||||
@deftypefnx {C Function} SCM scm_from_int16 (scm_t_int16 x)
|
||||
|
|
|
@ -3,7 +3,8 @@
|
|||
#ifndef SCM_NUMBERS_H
|
||||
#define SCM_NUMBERS_H
|
||||
|
||||
/* Copyright (C) 1995,1996,1998,2000,2001,2002,2003,2004,2005, 2006, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1995,1996,1998,2000,2001,2002,2003,2004,2005, 2006,
|
||||
* 2008, 2009, 2010, 2011, 2013 Free Software Foundation, Inc.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
|
@ -501,6 +502,18 @@ SCM_API SCM scm_from_mpz (mpz_t rop);
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if SCM_SIZEOF_SCM_T_PTRDIFF == 4
|
||||
#define scm_to_ptrdiff_t scm_to_int32
|
||||
#define scm_from_ptrdiff_t scm_from_int32
|
||||
#else
|
||||
#if SCM_SIZEOF_SCM_T_PTRDIFF == 8
|
||||
#define scm_to_ptrdiff_t scm_to_int64
|
||||
#define scm_from_ptrdiff_t scm_from_int64
|
||||
#else
|
||||
#error sizeof(scm_t_ptrdiff) is not 4 or 8.
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* conversion functions for double */
|
||||
|
||||
SCM_API int scm_is_real (SCM val);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue