Feerick: Kamuela_iOS: a 32 bit number has 4 bytes, which, from least to most significant, are red, green, blue, alpha
Borchardt: So do those operators result in shifts?
Favre: So take this red and make it blue
Hermenau: By shifting the bit value
Lynah: Tcsc, ABGR? but PNG uses ARGB? or was it RGBA.
Feerick: It’s basically equivalent to building a color from each channel
Feerick: Soni: cnavas2d does abgr for like no reason
Feerick: It has to be byteswapped
Puzio: And that kind of stuff is why I hate JS .
Feerick: Other stuff does it too though
Selca: Well WinAPI is understandable
Feerick: Kamuela_iOS: like, you know #rrggbb in css?
Feerick: Well, imagine if css had an alpha and it was at the end, so #rrggbbaa
Feerick: It would be like that, but in reverse order
Feerick: So if it werent in reverse order
Heise: Imagine if you could put the opacity CSS flag onto the color code
Feerick: It would just be red 24 green 16 blue 8 a
Ashraf: That’s what the aa / alpha is
Schapp: They do with rgba syntax
Feerick: Its like that but they arent hex numbers there
Feerick: And a is a number from 0 to 1
Feerick: Whereas the rest are from 0 to 255
Affagato: But it’s 24 bits of actual color righ
Ruter: See. I know some stuff. I know words
Feerick: You also do some similar stuff to pack vectors in opengl but tbh i’ve never done that with webgl
Feerick: But i also have bad habit code where i do var val = Math.random*1000 or something
Nealis: I do ~~Math.random*100
Feerick: I dont like that as much
Feerick: I dont really like either but i’m lazy and havent truly committed to stopping
Hanberg: It’s similar to C’s toboolean operator aka !stuff
Feerick: I mean in c you can just ***ign to a bool in c, or use it in a boolean context and it will just do that also
Feerick: Idk how often i’ve done ! in c.
Feerick: More in c++ when i want to invoke operator bool or something
Douvier: Wait, what C are we talking about?
Sucre: Because I mean like C89
Feerick: I write x != 0 even if its inside an if statement anyway
Rameriez: C89 and C99 don’t really differ on the matter.
Feerick: I think that was the confusion
Feerick: I dont have the old school cred of ever actually having used c89
Laughead: C99 adds something like _boolean, but it doesn’t change the meaning of if/&&/ etc.
Feerick: On windows i just compile as c++
Jackett: And even the “boolean” type is still just an integer, just an implementation-defined one.
Feerick: Which #defines bool _Bool
Feerick: If you ***ign to it it converts to 0 or 1
Feerick: Idr if it has a defined size though. i dont think so. maybe same size as uint8_least_t or whatever
Feerick: I never understood why cstdbool didnt make bool a typedef fwiw
Feerick: It coerces on ***ignment though
Allbert: Indeed, didn’t realise that.
Feerick: I didnt either, but was wrong on the internet once
Guzek: Though afaik, it doesn’t have anything special other than that.
Burtschi: It’s still defined as a “standard integer type”
Brihm: And it has an object size = 1, can be pointed to, etc
Herlong: Er, “standard unsigned integer type”* at least
Urtiaga: I wonder if MySQL has changed their code to use _Bool.
Feerick: I mean does mysql compile with msvc?