rewrite-sugar* ( obj -- )


Vocabulary
locals.rewrite.sugar

Definition
IN: locals.rewrite.sugar

GENERIC: rewrite-sugar* ( obj -- )


Methods
USING: arrays locals.rewrite.sugar ;

M: array rewrite-sugar* rewrite-element ;


USING: locals.rewrite.sugar make quotations ;

M: callable rewrite-sugar* quotation-rewrite , ;


USING: locals.rewrite.sugar locals.types make ;

M: def rewrite-sugar* , ;


USING: hashtables locals.rewrite.sugar ;

M: hashtable rewrite-sugar* rewrite-element ;


USING: locals.rewrite.sugar locals.types make ;

M: lambda rewrite-sugar* quotation-rewrite , ;


USING: accessors locals.rewrite.sugar locals.types make ;

M: let rewrite-sugar* body>> quotation-rewrite % ;


USING: accessors locals.rewrite.sugar locals.types make
sequences ;

M: multi-def rewrite-sugar*
locals>> <reversed> [ <def> , ] each ;


USING: kernel locals.rewrite.sugar make ;

M: object rewrite-sugar* , ;


USING: kernel locals.rewrite.sugar ;

M: tuple rewrite-sugar* rewrite-element ;


USING: locals.rewrite.sugar vectors ;

M: vector rewrite-sugar* rewrite-element ;


USING: generic kernel locals.backend locals.errors
locals.rewrite.sugar sequences words ;

M: word rewrite-sugar*
dup { load-locals get-local drop-locals } member-eq?
[ >r/r>-in-lambda-error ]
[ M\ word rewrite-sugar* (call-next-method) ] if ;


USING: kernel locals.rewrite.sugar ;

M: wrapper rewrite-sugar* rewrite-wrapper ;