Module EndianString

Contents

Instructions: Use this module in your project

In the IDE (CLion, Visual Studio Code, Xcode, etc.) you use for your DkSDK project:

  1. Add the following to your project's dependencies/CMakeLists.txt:

    Copy
    DkSDKProject_DeclareAvailable(ocplib-endian
        CONSTRAINT "= "
        FINDLIBS ocplib-endian ocplib-endian.bigstring)
    DkSDKProject_MakeAvailable(ocplib-endian)
  2. Add the Findlib::ocplib-endian library to any desired targets in src/*/CMakeLists.txt:

    Copy
    target_link_libraries(YourPackage_YourLibraryName
         # ... existing libraries, if any ...
         Findlib::ocplib-endian)
  3. Click your IDE's Build button

Not using DkSDK?

FIRST, do one or all of the following:

  1. Run:

    Copy
    opam install ocplib-endian.null
  2. Edit your dune-project and add:

    Copy
    (package
      (name YourExistingPackage)
      (depends
      ; ... existing dependenices ...
      (ocplib-endian (>= ))))

    Then run:

    Copy
    dune build *.opam # if this fails, run: dune build
  3. Edit your <package>.opam file and add:

    Copy
    depends: [
      # ... existing dependencies ...
      "ocplib-endian" {>= ""}
    ]

    Then run:

    Copy
    opam install . --deps-only

FINALLY, add the ocplib-endian library to any desired (library)and/or (executable) targets in your **/dune files:

Copy
(library
  (name YourLibrary)
  ; ... existing library options ...
  (libraries
    ; ... existing libraries ...
    ocplib-endian))

(executable
  (name YourExecutable)
  ; ... existing executable options ...
  (libraries
    ; ... existing libraries ...
    ocplib-endian))
module type EndianStringSig=sig...end

Functions reading according to Big Endian byte order

module BigEndian:sig...end

Functions reading according to Big Endian byte order without checking for overflow

module BigEndian_unsafe:sig...end

Functions reading according to Big Endian byte order without checking for overflow

module LittleEndian:sig...end

Functions reading according to Little Endian byte order

module LittleEndian_unsafe:sig...end

Functions reading according to Big Endian byte order without checking for overflow

module NativeEndian:sig...end

Functions reading according to machine endianness

module NativeEndian_unsafe:sig...end

Functions reading according to machine endianness without checking for overflow