Improve error when 'include' form with relative path is not in a file.
[bpt/guile.git] / module / language / elisp / runtime / function-slot.scm
1 ;;; Guile Emacs Lisp
2
3 ;;; Copyright (C) 2009, 2010 Free Software Foundation, Inc.
4 ;;;
5 ;;; This library is free software; you can redistribute it and/or
6 ;;; modify it under the terms of the GNU Lesser General Public
7 ;;; License as published by the Free Software Foundation; either
8 ;;; version 3 of the License, or (at your option) any later version.
9 ;;;
10 ;;; This library is distributed in the hope that it will be useful,
11 ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
12 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 ;;; Lesser General Public License for more details.
14 ;;;
15 ;;; You should have received a copy of the GNU Lesser General Public
16 ;;; License along with this library; if not, write to the Free Software
17 ;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
19 (define-module (language elisp runtime function-slot)
20 #:use-module (language elisp runtime subrs)
21 #:use-module ((language elisp runtime macros)
22 #:select
23 ((macro-lambda . lambda)
24 (macro-prog1 . prog1)
25 (macro-prog2 . prog2)
26 (macro-when . when)
27 (macro-unless . unless)
28 (macro-cond . cond)
29 (macro-and . and)
30 (macro-or . or)
31 (macro-dotimes . dotimes)
32 (macro-dolist . dolist)
33 (macro-catch . catch)
34 (macro-unwind-protect . unwind-protect)
35 (macro-pop . pop)
36 (macro-push . push)))
37 #:use-module ((language elisp compile-tree-il)
38 #:select
39 ((compile-progn . progn)
40 (compile-if . if)
41 (compile-defconst . defconst)
42 (compile-defvar . defvar)
43 (compile-setq . setq)
44 (compile-let . let)
45 (compile-lexical-let . lexical-let)
46 (compile-flet . flet)
47 (compile-let* . let*)
48 (compile-lexical-let* . lexical-let*)
49 (compile-flet* . flet*)
50 (compile-with-always-lexical . with-always-lexical)
51 (compile-guile-ref . guile-ref)
52 (compile-guile-primitive . guile-primitive)
53 (compile-while . while)
54 (compile-function . function)
55 (compile-defun . defun)
56 (compile-defmacro . defmacro)
57 (#{compile-`}# . #{`}#)
58 (compile-quote . quote)))
59 #:duplicates (last)
60 ;; special operators
61 #:re-export (progn
62 if
63 defconst
64 defvar
65 setq
66 let
67 lexical-let
68 flet
69 let*
70 lexical-let*
71 flet*
72 with-always-lexical
73 guile-ref
74 guile-primitive
75 while
76 function
77 defun
78 defmacro
79 #{`}#
80 quote)
81 ;; macros
82 #:re-export (lambda
83 prog1
84 prog2
85 when
86 unless
87 cond
88 and
89 or
90 dotimes
91 dolist
92 catch
93 unwind-protect
94 pop
95 push)
96 ;; functions
97 #:re-export (eq
98 equal
99 floatp
100 integerp
101 numberp
102 wholenump
103 zerop
104 =
105 /=
106 <
107 <=
108 >
109 >=
110 max
111 min
112 abs
113 float
114 1+
115 1-
116 +
117 -
118 *
119 %
120 ffloor
121 fceiling
122 ftruncate
123 fround
124 consp
125 atomp
126 listp
127 nlistp
128 null
129 car
130 cdr
131 car-safe
132 cdr-safe
133 nth
134 nthcdr
135 length
136 cons
137 list
138 make-list
139 append
140 reverse
141 copy-tree
142 number-sequence
143 setcar
144 setcdr
145 symbol-value
146 symbol-function
147 set
148 fset
149 makunbound
150 fmakunbound
151 boundp
152 fboundp
153 apply
154 funcall
155 throw
156 not
157 eval
158 load))