mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 11:50:28 +02:00
* libguile/load.h: Update scm_search_path prototype. * libguile/load.c: Include vm.h for load-compiled/vm. Not sure if this is bad wrt modularity. (scm_c_string_has_an_ext): New private helper. (scm_search_path): Add an extra optional arg, `require_exts'; if true, require that the returned file name have one of the given extensions. Changes the C API, but not the scheme API. (scm_sys_search_load_path): Adapt to scm_search_path API change. (primitive-load-path): Here is the craziness: load a compiled file if found and newer than the corresponding (or not) source file. (scm_init_load): Define %load-compiled-extensions as the list of extensions denoting compiled files; defaults to '(".go").
47 lines
1.6 KiB
C
47 lines
1.6 KiB
C
/* classes: h_files */
|
||
|
||
#ifndef SCM_LOAD_H
|
||
#define SCM_LOAD_H
|
||
|
||
/* Copyright (C) 1995,1996,1998,2000,2001, 2006, 2008 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 as published by the Free Software Foundation; either
|
||
* version 2.1 of the License, or (at your option) any later version.
|
||
*
|
||
* This library is distributed in the hope that it will be useful,
|
||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||
* Lesser General Public License for more details.
|
||
*
|
||
* 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||
*/
|
||
|
||
|
||
|
||
#include "libguile/__scm.h"
|
||
|
||
|
||
SCM_API SCM scm_parse_path (SCM path, SCM tail);
|
||
SCM_API SCM scm_primitive_load (SCM filename);
|
||
SCM_API SCM scm_c_primitive_load (const char *filename);
|
||
SCM_API SCM scm_sys_package_data_dir (void);
|
||
SCM_API SCM scm_sys_library_dir (void);
|
||
SCM_API SCM scm_sys_site_dir (void);
|
||
SCM_API SCM scm_search_path (SCM path, SCM filename, SCM exts, SCM require_exts);
|
||
SCM_API SCM scm_sys_search_load_path (SCM filename);
|
||
SCM_API SCM scm_primitive_load_path (SCM filename);
|
||
SCM_API SCM scm_c_primitive_load_path (const char *filename);
|
||
SCM_INTERNAL void scm_init_load_path (void);
|
||
SCM_INTERNAL void scm_init_load (void);
|
||
|
||
#endif /* SCM_LOAD_H */
|
||
|
||
/*
|
||
Local Variables:
|
||
c-file-style: "gnu"
|
||
End:
|
||
*/
|