add pic_size_value

This commit is contained in:
Yuichi Nishiwaki
2014-09-27 19:48:49 +09:00
parent b3def908b6
commit cf9d48a865
6 changed files with 17 additions and 5 deletions
+12
View File
@@ -189,6 +189,7 @@ static inline pic_value pic_undef_value();
static inline pic_value pic_obj_value(void *);
static inline pic_value pic_float_value(double);
static inline pic_value pic_int_value(int);
static inline pic_value pic_size_value(size_t);
static inline pic_value pic_sym_value(pic_sym);
static inline pic_value pic_char_value(char c);
static inline pic_value pic_none_value();
@@ -323,6 +324,17 @@ pic_bool_value(bool b)
return v;
}
static inline pic_value
pic_size_value(size_t s)
{
if (sizeof(unsigned) < sizeof(size_t)) {
if (s > (size_t)INT_MAX) {
return pic_float_value(s);
}
}
return pic_int_value((int)s);
}
#if PIC_NAN_BOXING
static inline pic_value