assocs: inline assoc-empty? and make M\ enum at* not check bounds twice.
parent
3502c5fbc2
commit
9d5530f3e4
|
@ -108,7 +108,7 @@ M: assoc assoc-clone-like ( assoc exemplar -- newassoc )
|
||||||
[ delete-at* ] keep [ set-at ] with-assoc [ 2drop ] if ;
|
[ delete-at* ] keep [ set-at ] with-assoc [ 2drop ] if ;
|
||||||
|
|
||||||
: assoc-empty? ( assoc -- ? )
|
: assoc-empty? ( assoc -- ? )
|
||||||
assoc-size 0 = ;
|
assoc-size 0 = ; inline
|
||||||
|
|
||||||
: assoc-stack ( key seq -- value )
|
: assoc-stack ( key seq -- value )
|
||||||
[ length 1 - ] keep (assoc-stack) ; flushable
|
[ length 1 - ] keep (assoc-stack) ; flushable
|
||||||
|
@ -235,7 +235,7 @@ C: <enum> enum
|
||||||
|
|
||||||
M: enum at*
|
M: enum at*
|
||||||
seq>> 2dup bounds-check?
|
seq>> 2dup bounds-check?
|
||||||
[ nth t ] [ 2drop f f ] if ; inline
|
[ nth-unsafe t ] [ 2drop f f ] if ; inline
|
||||||
|
|
||||||
M: enum set-at seq>> set-nth ; inline
|
M: enum set-at seq>> set-nth ; inline
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue