(eval-and-compile): Moved from poe.el.
authormorioka <morioka>
Sun, 8 Nov 1998 19:54:49 +0000 (19:54 +0000)
committermorioka <morioka>
Sun, 8 Nov 1998 19:54:49 +0000 (19:54 +0000)
poe-18.el

index d429765..f816d57 100644 (file)
--- a/poe-18.el
+++ b/poe-18.el
@@ -79,6 +79,17 @@ This function works by modifying `process-environment'."
   t)
 
 
+;;; @@ function
+;;;
+
+(defun defalias (sym newdef)
+  "Set SYMBOL's function definition to NEWVAL, and return NEWVAL.
+Associates the function with the current load file, if any.
+\[poe-18.el; EMACS 19 emulating function]"
+  (fset sym newdef)
+  )
+
+
 ;;; @ Compilation Features
 ;;;
 
@@ -87,6 +98,11 @@ This function works by modifying `process-environment'."
   (cons 'defun (cons name (cons arglist body)))
   )
 
+(defmacro-maybe eval-and-compile (&rest body)
+  "Like `progn', but evaluates the body at compile time and at load time."
+  ;; Remember, it's magic.
+  (cons 'progn body))
+
 (defun byte-code-function-p (exp)
   "T if OBJECT is a byte-compiled function object.
 \[poe-18.el; EMACS 19 emulating function]"
@@ -118,17 +134,6 @@ If NEW is a string, that is the `use instead' message."
   fn)
 
 
-;;; @@ function
-;;;
-
-(defun defalias (sym newdef)
-  "Set SYMBOL's function definition to NEWVAL, and return NEWVAL.
-Associates the function with the current load file, if any.
-\[poe-18.el; EMACS 19 emulating function]"
-  (fset sym newdef)
-  )
-
-
 ;;; @ text property
 ;;;