;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-;; $Id: glib.lisp,v 1.37 2006-04-25 21:51:32 espen Exp $
+;; $Id: glib.lisp,v 1.39 2006-12-21 16:38:19 espen Exp $
(in-package "GLIB")
(defbinding (%deallocate-memory "g_free") () nil
(address pointer))
-(setf
- (symbol-function 'allocate-memory) #'%allocate-memory
- (symbol-function 'deallocate-memory) #'%deallocate-memory)
+;; (setf
+;; (symbol-function 'allocate-memory) #'%allocate-memory
+;; (symbol-function 'deallocate-memory) #'%deallocate-memory)
+(setf *memory-allocator* #'%allocate-memory)
+(setf *memory-deallocator* #'%deallocate-memory)
;;;; User data mechanism
(assert-not-inlined type inlined)
(size-of 'pointer))
+(define-type-method type-alignment ((type glist) &key inlined)
+ (assert-not-inlined type inlined)
+ (type-alignment 'pointer))
(define-type-method alien-arg-wrapper ((type glist) var list style form &optional copy-in-p)
(destructuring-bind (element-type) (rest (type-expand-to 'glist type))
(assert-not-inlined type inlined)
(size-of 'pointer))
+(define-type-method type-alignment ((type gslist) &key inlined)
+ (assert-not-inlined type inlined)
+ (type-alignment 'pointer))
+
(define-type-method alien-arg-wrapper ((type gslist) var list style form &optional copy-in-p)
(destructuring-bind (element-type) (rest (type-expand-to 'gslist type))
(cond