Rust wrapper for libctru
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Fenrir 3ad0909b25 Reorganize the list a bit 7 years ago
..
src Stub out set_cloexec 7 years ago
Cargo.toml Ensure that the sysroot uses its own libc 7 years ago
README.md Reorganize the list a bit 7 years ago

README.md

A work-in-progress port of the Rust Standard Library for the Nintendo 3DS, based on ctrulib and the devkitARM toolchain.

Structure

This library aims to mimick the Rust standard library's public interface as closely as possible, exposing functionality that is common between the 3DS and other platforms. System-specific functionality such as control input, save file management, GPU features, and so forth are implemented in ctru-rs.

Implemented modules

Stable modules

  • any
  • ascii
  • borrow
  • boxed
  • cell
  • char
  • clone
  • cmp
  • collections
  • convert
  • default
  • error
  • f32
  • f64
  • ffi
  • fmt
  • fs Both sdmc:/ and romfs:/ paths are supported in standard file operations
  • hash
  • i8
  • i16
  • i32
  • i64
  • io
  • isize
  • iter
  • marker
  • mem
  • num
  • ops
  • option
  • panic
  • path
  • prelude
  • ptr
  • rc
  • result
  • slice
  • str
  • string
  • sync
  • time
  • thread Threads are able to be spawned, but without the ability to pin to a specific core or set thread priority
  • u8
  • u16
  • u32
  • u64
  • usize
  • vec

Nightly modules

  • heap
  • i128
  • intrinsics
  • raw
  • u128

Partially working modules

  • env argc/argv can be implemented but have not been yet
  • net Anything not involving IPv6 should work after initializing the Soc service in ctru-rs
  • os The modules in here should work, but they aren't well-tested

Non-functional modules

  • process Unable to be implemented due to platform incompatibilities