*
* 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
*/
{
SCM ans = scm_c_make_vector (15, SCM_UNSPECIFIED);
- SCM_VECTOR_SET(ans, 0, scm_from_ulong (stat_temp->st_dev));
- SCM_VECTOR_SET(ans, 1, scm_from_ulong (stat_temp->st_ino));
- SCM_VECTOR_SET(ans, 2, scm_from_ulong (stat_temp->st_mode));
- SCM_VECTOR_SET(ans, 3, scm_from_ulong (stat_temp->st_nlink));
- SCM_VECTOR_SET(ans, 4, scm_from_ulong (stat_temp->st_uid));
- SCM_VECTOR_SET(ans, 5, scm_from_ulong (stat_temp->st_gid));
+ SCM_SIMPLE_VECTOR_SET(ans, 0, scm_from_ulong (stat_temp->st_dev));
+ SCM_SIMPLE_VECTOR_SET(ans, 1, scm_from_ulong (stat_temp->st_ino));
+ SCM_SIMPLE_VECTOR_SET(ans, 2, scm_from_ulong (stat_temp->st_mode));
+ SCM_SIMPLE_VECTOR_SET(ans, 3, scm_from_ulong (stat_temp->st_nlink));
+ SCM_SIMPLE_VECTOR_SET(ans, 4, scm_from_ulong (stat_temp->st_uid));
+ SCM_SIMPLE_VECTOR_SET(ans, 5, scm_from_ulong (stat_temp->st_gid));
#ifdef HAVE_STRUCT_STAT_ST_RDEV
- SCM_VECTOR_SET(ans, 6, scm_from_ulong (stat_temp->st_rdev));
+ SCM_SIMPLE_VECTOR_SET(ans, 6, scm_from_ulong (stat_temp->st_rdev));
#else
- SCM_VECTOR_SET(ans, 6, SCM_BOOL_F);
+ SCM_SIMPLE_VECTOR_SET(ans, 6, SCM_BOOL_F);
#endif
- SCM_VECTOR_SET(ans, 7, scm_from_ulong (stat_temp->st_size));
- SCM_VECTOR_SET(ans, 8, scm_from_ulong (stat_temp->st_atime));
- SCM_VECTOR_SET(ans, 9, scm_from_ulong (stat_temp->st_mtime));
- SCM_VECTOR_SET(ans, 10, scm_from_ulong (stat_temp->st_ctime));
+ SCM_SIMPLE_VECTOR_SET(ans, 7, scm_from_ulong (stat_temp->st_size));
+ SCM_SIMPLE_VECTOR_SET(ans, 8, scm_from_ulong (stat_temp->st_atime));
+ SCM_SIMPLE_VECTOR_SET(ans, 9, scm_from_ulong (stat_temp->st_mtime));
+ SCM_SIMPLE_VECTOR_SET(ans, 10, scm_from_ulong (stat_temp->st_ctime));
#ifdef HAVE_STRUCT_STAT_ST_BLKSIZE
- SCM_VECTOR_SET(ans, 11, scm_from_ulong (stat_temp->st_blksize));
+ SCM_SIMPLE_VECTOR_SET(ans, 11, scm_from_ulong (stat_temp->st_blksize));
#else
- SCM_VECTOR_SET(ans, 11, scm_from_ulong (4096L));
+ SCM_SIMPLE_VECTOR_SET(ans, 11, scm_from_ulong (4096L));
#endif
#ifdef HAVE_STRUCT_STAT_ST_BLOCKS
- SCM_VECTOR_SET(ans, 12, scm_from_ulong (stat_temp->st_blocks));
+ SCM_SIMPLE_VECTOR_SET(ans, 12, scm_from_ulong (stat_temp->st_blocks));
#else
- SCM_VECTOR_SET(ans, 12, SCM_BOOL_F);
+ SCM_SIMPLE_VECTOR_SET(ans, 12, SCM_BOOL_F);
#endif
{
int mode = stat_temp->st_mode;
if (S_ISREG (mode))
- SCM_VECTOR_SET(ans, 13, scm_sym_regular);
+ SCM_SIMPLE_VECTOR_SET(ans, 13, scm_sym_regular);
else if (S_ISDIR (mode))
- SCM_VECTOR_SET(ans, 13, scm_sym_directory);
+ SCM_SIMPLE_VECTOR_SET(ans, 13, scm_sym_directory);
#ifdef HAVE_S_ISLNK
else if (S_ISLNK (mode))
- SCM_VECTOR_SET(ans, 13, scm_sym_symlink);
+ SCM_SIMPLE_VECTOR_SET(ans, 13, scm_sym_symlink);
#endif
else if (S_ISBLK (mode))
- SCM_VECTOR_SET(ans, 13, scm_sym_block_special);
+ SCM_SIMPLE_VECTOR_SET(ans, 13, scm_sym_block_special);
else if (S_ISCHR (mode))
- SCM_VECTOR_SET(ans, 13, scm_sym_char_special);
+ SCM_SIMPLE_VECTOR_SET(ans, 13, scm_sym_char_special);
else if (S_ISFIFO (mode))
- SCM_VECTOR_SET(ans, 13, scm_sym_fifo);
+ SCM_SIMPLE_VECTOR_SET(ans, 13, scm_sym_fifo);
#ifdef S_ISSOCK
else if (S_ISSOCK (mode))
- SCM_VECTOR_SET(ans, 13, scm_sym_sock);
+ SCM_SIMPLE_VECTOR_SET(ans, 13, scm_sym_sock);
#endif
else
- SCM_VECTOR_SET(ans, 13, scm_sym_unknown);
+ SCM_SIMPLE_VECTOR_SET(ans, 13, scm_sym_unknown);
- SCM_VECTOR_SET(ans, 14, scm_from_int ((~S_IFMT) & mode));
+ SCM_SIMPLE_VECTOR_SET(ans, 14, scm_from_int ((~S_IFMT) & mode));
/* the layout of the bits in ve[14] is intended to be portable.
If there are systems that don't follow the usual convention,
tmp <<= 1;
if (S_IXOTH & mode) tmp += 1;
- SCM_VECTOR_SET(ans, 14, scm_from_int (tmp));
+ SCM_SIMPLE_VECTOR_SET(ans, 14, scm_from_int (tmp));
*/
}
if (!SCM_DIR_OPEN_P (exp))
scm_puts ("closed: ", port);
scm_puts ("directory stream ", port);
- scm_intprint (SCM_CELL_WORD_1 (exp), 16, port);
+ scm_uintprint (SCM_CELL_WORD_1 (exp), 16, port);
scm_putc ('>', port);
return 1;
}
{
int max_fd = 0;
- if (SCM_VECTORP (list_or_vec))
+ if (scm_is_simple_vector (list_or_vec))
{
- int i = SCM_VECTOR_LENGTH (list_or_vec);
- SCM const *ve = SCM_VELTS (list_or_vec);
+ int i = SCM_SIMPLE_VECTOR_LENGTH (list_or_vec);
while (--i >= 0)
{
- int fd = set_element (set, ports_ready, ve[i], pos);
+ int fd = set_element (set, ports_ready,
+ SCM_SIMPLE_VECTOR_REF (list_or_vec, i), pos);
if (fd > max_fd)
max_fd = fd;
{
SCM answer_list = ports_ready;
- if (SCM_VECTORP (list_or_vec))
+ if (scm_is_simple_vector (list_or_vec))
{
- int i = SCM_VECTOR_LENGTH (list_or_vec);
- SCM const *ve = SCM_VELTS (list_or_vec);
+ int i = SCM_SIMPLE_VECTOR_LENGTH (list_or_vec);
while (--i >= 0)
{
- answer_list = get_element (set, ve[i], answer_list);
+ answer_list = get_element (set,
+ SCM_SIMPLE_VECTOR_REF (list_or_vec, i),
+ answer_list);
}
return scm_vector (answer_list);
}
SCM write_ports_ready = SCM_EOL;
int max_fd;
- if (SCM_VECTORP (reads))
+ if (scm_is_simple_vector (reads))
{
- read_count = SCM_VECTOR_LENGTH (reads);
+ read_count = SCM_SIMPLE_VECTOR_LENGTH (reads);
}
else
{
read_count = scm_ilength (reads);
SCM_ASSERT (read_count >= 0, reads, SCM_ARG1, FUNC_NAME);
}
- if (SCM_VECTORP (writes))
+ if (scm_is_simple_vector (writes))
{
- write_count = SCM_VECTOR_LENGTH (writes);
+ write_count = SCM_SIMPLE_VECTOR_LENGTH (writes);
}
else
{
write_count = scm_ilength (writes);
SCM_ASSERT (write_count >= 0, writes, SCM_ARG2, FUNC_NAME);
}
- if (SCM_VECTORP (excepts))
+ if (scm_is_simple_vector (excepts))
{
- except_count = SCM_VECTOR_LENGTH (excepts);
+ except_count = SCM_SIMPLE_VECTOR_LENGTH (excepts);
}
else
{
}
{
- int rv = scm_internal_select (max_fd + 1,
- &read_set, &write_set, &except_set,
- time_ptr);
+ int rv = scm_std_select (max_fd + 1,
+ &read_set, &write_set, &except_set,
+ time_ptr);
if (rv < 0)
SCM_SYSERROR;
}