thanks! that worked. the cast to int makes sense is since the jvm will
convert the byte value to an int for the & computation

On Jul 27, 2:47 pm, Joost <[email protected]> wrote:
> Peter Ryan wrote:
> > I am trying to avoid a reflective callback with this function:
>
> > (defn unsign-byte-from-buffer [#^java.nio.ByteBuffer buffer]
> >   (bit-and 0xFF (.get buffer)))
>
> > (println "should be 254" (unsign-byte-from-buffer (java.nio.ByteBuffer/
> > wrap (byte-array [(byte 0xFE)]))))
>
> > when run with (set! *warn-on-reflection* true) I receive the following
> > error:
>
> > Reflection warning...type-hint.clj:7 - call to and can't be resolved.
>
> There is no bit-and for bytes; you need ints. At least that's what it
> looks like to me.
>
> (defn unsign-byte-from-buffer [#^java.nio.ByteBuffer buffer]
>   (bit-and 0xff (int (.get buffer))))
>
> seems to solve the issue for me.

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to