Skip to content

kotlin-graphics/kotlin-unsigned

Folders and files

NameName
Last commit message
Last commit date

Latest commit

5c711c4 · Nov 28, 2023
Jun 3, 2023
Nov 3, 2023
Nov 7, 2023
Nov 2, 2023
Nov 7, 2023
Feb 5, 2021
May 26, 2017
Nov 28, 2023
Nov 3, 2023
Aug 24, 2020
Sep 7, 2021
Jun 3, 2023
Jun 3, 2023
Feb 5, 2021
Nov 2, 2023
Nov 3, 2023

Repository files navigation

kotlin-unsigned

Build Status license Size Github All Releases

Unsigned operators and boxed types (U8, U16, U32 and U64) for unsigned support.

To have a quick idea what this library offers, take a look at the tests

Differences with kotlin stdlib:

  • this project uses classes instead inline classes. To address this in critical scenarios where allocations may have a sensitive impact, primitive variable holding the unsigned type value is a var, so you can re-use the same instance over and over again
  • unsigned types extend Number abstract class
  • automatic conversions
  • it is possible to get a string representation with a specific format by calling the corresponding toString(format: String) method, eg: ubyte.format("%08x")
  • all the unsigned types implement all the function, including shl and shr for Ubyte and Ushort
  • there is no automatic padding to integer for unsigned bytes and shorts, so if you add an Ushort to another Ushort you get an Ushort (and not an Uint)

Install:

mary

repositories {
    maven("https://raw.githubusercontent.com/kotlin-graphics/mary/master")
    // or with magik plugin
    //github("kotlin-graphics/mary")
}
dependencies {
    implementation("kotlin.graphics:unsigned:3.3.32")
}

maven central

dependencies {
    implementation("io.github.kotlin-graphics:kotlin-unsigned:3.3.32")
}

You can find more info by mary

Contributions:

Don't hesitate to contribute to the project by submitting issues or pull requests for bugs and features. Any feedback is welcome at [email protected].

Credits:

Deploys by Netlify