(read_without_guile): New.
[bpt/guile.git] / libguile / tags.h
index a2bdb73..3f5483f 100644 (file)
@@ -18,7 +18,7 @@
  *
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
 \f
@@ -136,7 +136,7 @@ typedef unsigned long scm_t_bits;
 /* SCM values can not be compared by using the operator ==.  Use the following
  * macro instead, which is the equivalent of the scheme predicate 'eq?'.
  */
-#define SCM_EQ_P(x, y) (SCM_UNPACK (x) == SCM_UNPACK (y))
+#define scm_is_eq(x, y) (SCM_UNPACK (x) == SCM_UNPACK (y))
 
 \f
 
@@ -325,8 +325,8 @@ typedef unsigned long scm_t_bits;
  * tc8 (for objects with tc3==100):
  *   00000-100:  special objects ('flags')
  *   00001-100:  characters
- *   00010-100:  evaluator byte codes ('ilocs')
- *   00011-100:  evaluator byte codes ('isyms')
+ *   00010-100:  evaluator byte codes ('isyms')
+ *   00011-100:  evaluator byte codes ('ilocs')
  *
  *
  * Summary of type codes on the heap
@@ -383,14 +383,15 @@ typedef unsigned long scm_t_bits;
 
 /* Checking if a SCM variable holds an immediate integer: See numbers.h for
  * the definition of the following macros: SCM_I_FIXNUM_BIT,
- * SCM_MOST_POSITIVE_FIXNUM, SCM_INUMP, SCM_MAKINUM, SCM_INUM.  */
+ * SCM_MOST_POSITIVE_FIXNUM, SCM_I_INUMP, SCM_I_MAKINUM, SCM_I_INUM.  */
 
 /* Checking if a SCM variable holds a pair (for historical reasons, in Guile
  * also known as a cons-cell): This is done by first checking that the SCM
  * variable holds a non-immediate, and second, by checking that tc1==0 holds
- * for the SCM_CELL_TYPE of the SCM variable.  */
-#define SCM_CONSP(x)  (!SCM_IMP (x) && ((1 & SCM_CELL_TYPE (x)) == 0))
-#define SCM_NCONSP(x) (!SCM_CONSP (x))
+ * for the SCM_CELL_TYPE of the SCM variable.  
+*/
+
+#define SCM_I_CONSP(x)  (!SCM_IMP (x) && ((1 & SCM_CELL_TYPE (x)) == 0))
 
 \f
 
@@ -429,6 +430,7 @@ typedef unsigned long scm_t_bits;
 
 #define scm_tc7_string         21
 #define scm_tc7_number         23
+#define scm_tc7_stringbuf       39
 
 /* Many of the following should be turned
  * into structs or smobs.  We need back some
@@ -436,18 +438,15 @@ typedef unsigned long scm_t_bits;
 
 #define scm_tc7_pws            31
 
-#if SCM_HAVE_ARRAYS
-#define scm_tc7_llvect          29
-#define scm_tc7_uvect          37
-/* free                         39 */
-#define scm_tc7_fvect          45
-#define scm_tc7_dvect          47
-#define scm_tc7_cvect          53
-#define scm_tc7_svect          55
-#define scm_tc7_bvect          71
-#define scm_tc7_byvect         77
-#define scm_tc7_ivect          79
-#endif
+#define scm_tc7_unused_1        29
+#define scm_tc7_unused_2       37
+#define scm_tc7_unused_3       45
+#define scm_tc7_unused_4       47
+#define scm_tc7_unused_5       53
+#define scm_tc7_unused_6       55
+#define scm_tc7_unused_7       71
+#define scm_tc7_unused_8       77
+#define scm_tc7_unused_9       79
 
 #define scm_tc7_dsubr          61
 #define scm_tc7_cclo           63
@@ -531,7 +530,7 @@ enum scm_tc8_tags
 #define SCM_ELISP_NIL          SCM_MAKIFLAG (7)
 
 
-#define SCM_UNBNDP(x)          (SCM_EQ_P ((x), SCM_UNDEFINED))
+#define SCM_UNBNDP(x)          (scm_is_eq ((x), SCM_UNDEFINED))
 
 \f
 
@@ -542,10 +541,6 @@ enum scm_tc8_tags
 
 #define SCM_ISYMP(n)           (SCM_ITAG8 (n) == scm_tc8_isym)
 #define SCM_MAKISYM(n)                 SCM_MAKE_ITAG8 ((n), scm_tc8_isym)
-#define SCM_ISYMNUM(n)                 (SCM_ITAG8_DATA (n))
-
-SCM_API char *scm_isymnames[];   /* defined in print.c */
-#define SCM_ISYMCHARS(n)       (scm_isymnames[SCM_ISYMNUM (n)])
 
 #define SCM_IM_AND              SCM_MAKISYM (0)
 #define SCM_IM_BEGIN            SCM_MAKISYM (1)