diff --git a/basis/alien/destructors/destructors.factor b/basis/alien/destructors/destructors.factor index cf72212968..8b3be72cea 100644 --- a/basis/alien/destructors/destructors.factor +++ b/basis/alien/destructors/destructors.factor @@ -1,12 +1,12 @@ ! Copyright (C) 2009 Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. -USING: functors destructors accessors kernel lexer words ; +USING: functors destructors accessors kernel parser words ; IN: alien.destructors FUNCTOR: define-destructor ( F -- ) -F IS ${F} F-destructor DEFINES ${F}-destructor + DEFINES <${F}-destructor> &F DEFINES &${F} |F DEFINES |${F} @@ -14,14 +14,14 @@ WHERE TUPLE: F-destructor alien disposed ; +: ( alien -- destructor ) f F-destructor boa ; inline + M: F-destructor dispose* alien>> F execute ; -: &F ( alien -- alien ) - dup f F-destructor boa &dispose drop ; inline +: &F ( alien -- alien ) dup execute &dispose drop ; inline -: |F ( alien -- alien ) - dup f F-destructor boa |dispose drop ; inline +: |F ( alien -- alien ) dup execute |dispose drop ; inline ;FUNCTOR -: DESTRUCTOR: scan define-destructor ; parsing \ No newline at end of file +: DESTRUCTOR: scan-word define-destructor ; parsing \ No newline at end of file