- Added
NSTDAnyRef[Mut]::from_ptr
.
- Added
core.alloc
.
NSTDAllocError
&NSTDAllocator
were moved intocore.alloc
.- Allocation functions now use
NSTDAllocLayout
.
nstd_core_mem_copy[_overlapping]
functions are no longerconst
.
nstd_heap_ptr_new[_zeroed]
functions now take anNSTDAllocLayout
.
- Always define operating system constants as a
u8
value of either 0 or 1. - Standalone allocation functions now use
NSTDAllocLayout
.
nstd_shared_ptr_new[_zeroed]
functions now take anNSTDAllocLayout
.
NSTDVec
constructors now take analign
argument.
- Removed
NSTD[Unix|Windows]AllocError
in favor ofNSTDAllocError
.
- Merged
nstd.core.ptr.raw
intonstd.core.mem
.
- Removed
NSTDOptionalThreadHandle
. - Removed
NSTDOptionalThreadID
.
- Added
NSTDRef[Mut]
. - Added
NSTDAnyRef[Mut]
.
- Added
NSTDOptionalRef[Mut]
. - Added
NSTDOptionalAnyRef[Mut]
.
nstd_core_math_div_[ceil|floor]_*
functions now return optionals.nstd_core_str[_mut]_from_bytes
functions no longer panic.- Functions in
nstd.core.mem
no longer panic. - Functions in
nstd.core.ops
now return optionals instead of panicking.
nstd_fs_write
no longer panics.
nstd_os_windows_str_to_utf16
now returnsNSTDOptionalVec
.
nstd_proc_spawn
no longer panics.
nstd_shared_lib_load
no longer panics.
nstd_string_new_with_cap
now returnsNSTDOptionalString
.
nstd_vec_new_with_cap
now returnsNSTDOptionalVec
.
- Removed
nstd_core_abort_with_msg
. - Removed
nstd_core_ops_[inc|dec]_*
functions.
- Added an
nstd
feature to enable all modules. - Added a
link
feature.
- Added
NSTDOptionalStd[in|out|err][Lock]
.
- Added
NSTDOptionalMutex
.
- Added
NSTDOptionalThreadHandle
. - Added
NSTDOptionalThreadID
.
- Removed the
nstd_
prefix from all features.
nstd_env_temp_dir
now returnsNSTDOptionalString
.
nstd_io_std[in|out|err]
functions now returnNSTDOptionalStd[in|out|err]
respectively.nstd_io_std[in|out|err]_lock
functions now returnNSTDOptionalStd[in|out|err]Lock
respectively.
nstd_mutex_new
now returnsNSTDOptionalMutex
.nstd_mutex_lock
now returnsNSTDOptionalMutexLockResult
.
NSTDThreadResult
is nowNSTDOptionalHeapPtr
.nstd_thread_spawn
now takesconst NSTDThreadDescriptor *desc
.nstd_thread_[current|handle]
functions now returnNSTDOptionalThreadHandle
.nstd_thread_id
now returnsNSTDOptionalThreadID
.
- Removed the
asm
feature.
nstd_thread_spawn_with_desc
.
- Added
NSTDAllocator
&NSTD_ALLOCATOR
.
- Added
nstd_cstring_allocator
.
- Added
nstd_heap_ptr_allocator
.
- Added
nstd_shared_ptr_allocator
.
- Added
nstd_string_allocator
.
- Added
nstd_vec_allocator
.
nstd_cstring_from_cstr[_unchecked]
functions now take anNSTDAllocator
.nstd_cstring_new[_with_cap]
functions now take anNSTDAllocator
.nstd_cstring_new_with_cap
no longer panics.
nstd_env_var
no longer panics.nstd_env_temp_dir
now returnsNSTDOptionalString
.nstd_env_current_[dir|exe]
functions no longer panic.
nstd_fs_absolute
no longer panics.nstd_fs_read[_to_string]
functions no longer panic.
nstd_heap_ptr_new[_zeroed]
functions now take anNSTDAllocator
.
nstd_io_read[_line]
functions no longer panic.
nstd_shared_ptr_new[_zeroed]
functions now take anNSTDAllocator
.
nstd_string_from_str
now takes anNSTDAllocator
.nstd_string_new[_with_cap]
functions now take anNSTDAllocator
.nstd_string_new_with_cap
no longer panics.nstd_string_from_*
functions now returnNSTDOptionalString
.
nstd_vec_from_slice
now takes anNSTDAllocator
.nstd_vec_new[_with_cap]
functions now take anNSTDAllocator
.nstd_vec_new[_with_cap]
functions no longer panic.nstd_vec_from_slice
no longer panics.nstd_vec_set_len
no longer returnsNSTDErrorCode
.
- Added
nstd_core_abort[_with_msg]
. - Added
NSTDOptionalAny[Mut]
. - Added
nstd_core_slice[_mut]_empty
.
- Added
nstd_heap_ptr_drop
.
- Added
nstd_mutex_into_inner
. - Added
nstd_mutex_drop
.
- Added
NSTD_UNIX_ALLOC_ERROR_INVALID_LAYOUT
. - Added
nstd_os_unix_mutex_into_inner
. - Added
nstd_os_unix_mutex_drop
. - Added
NSTDUnixAllocError
.
- Added
nstd_shared_ptr_drop
.
- Added
nstd_timed_mutex_into_inner
. - Added
nstd_timed_mutex_drop
.
- Added
nstd_vec_drop
.
- Updated
windows-sys
to version 0.48.
nstd_core_str[_mut]_[from_cstr|from_raw_cstr[_with_null]|len|get|to_*]
no longer panics.nstd_core_cstr[_mut]_[is_null_terminated|get_null|get][_const]
no longer panics.nstd_core_slice[_mut]_[get|last][_const]
no longer panics.nstd_core_mem_compare
no longer panics.NSTDOptional
&NSTDResult
now useNSTDUInt8
as a discriminant.nstd_core_unichar_is_digit
no longer panics.nstd.core.time
functions now takeNSTDDuration
by value.nstd_core_slice_mut_copy
now panics.
nstd_cstring_new[_with_cap]
now returnsNSTDOptionalCString
.nstd_cstring_push
now returnsNSTDAllocError
.nstd_cstring_[new|from_cstr[_unchecked]|push|pop]
no longer panics.nstd_cstring_from_cstr[_unchecked]
now returnsNSTDOptionalCString
.nstd_cstring_clone
now returnsNSTDOptionalCString
.
nstd_env_set_current_dir
no longer panics.
nstd_fs_[[create|remove]_[file|dir|dirs]|rename|copy|metadata]
no longer panics.nstd_fs_file_[open|read_all|read_to_string]
no longer panics.
nstd_heap_ptr_[new[_zeroed]|clone]
now returnsNSTDOptionalHeapPtr
.
nstd_io_print[_line]
no longer panics.nstd_io_stdin[_lock]_[read_all|read_to_string|read_line]
no longer panics.
nstd_os_unix_mutex_timed_lock
now takesNSTDDuration
by value.nstd.os.unix.time
functions now takeNSTDUnixTime
&NSTDDuration
by value.
nstd_shared_ptr_new[_zeroed]
now returnsNSTDOptionalSharedPtr
.
nstd_string_[len|push[_str]|pop]
no longer panics.nstd_string_from_[str|bytes]
now returnsNSTDOptionalString
.nstd_string_clone
now returnsNSTDOptionalString
.
nstd_thread_spawn_with_desc
no longer panics.nstd_thread_spawn[_with_desc]
now takesNSTDOptionalHeapPtr
.nstd_thread_sleep
now takesNSTDDuration
.
nstd_time_now
now returnsNSTDOptionalTime
.nstd.time
functions now takeNSTDTime
&NSTDDuration
by value.
nstd_timed_mutex_timed_lock
now takesNSTDDuration
by value.
nstd_vec_[end|get|push|pop|insert|remove][_mut]
no longer panics.nstd_vec_from_slice
now returnsNSTDOptionalVec
.nstd_vec_clone
now returnsNSTDOptionalVec
.
Fixed some C99 header incompatibilities.
- Added
nstd.core.time
. nstd.core.cty
's functions now useNSTDChar
.- Added
nstd_core_unichar_is_[ascii|alphabetic|numeric|alphanumeric|lowercase|uppercase|whitespace|control|digit]
. - Added
nstd_core_unichar_replacement
. nstd_core_str[_mut]_substr
now returnsNSTDOptionalStr[Mut]
.nstd_core_str[_mut]_from_[cstr|raw_cstr[_with_null]|bytes]
now returnsNSTDOptionalStr[Mut]
.nstd_core_cstr[_mut]_new
now returnsNSTDOptionalCStr[Mut]
.nstd_core_slice[_mut]_new
now returnsNSTDOptionalSlice[Mut]
.nstd_core_ptr[_mut]_new
now returnsNSTDOptionalPtr[Mut]
.
nstd_fs_file_[read[_all|_to_string]|write]
now returnsNSTDIOResult
.
- Added
NSTDStd[in|out|err]Lock
. nstd_io_[stdout|stderr]_write
now returnsNSTDIOResult
.nstd_io_stdin_read[_all|_to_string|_line]
now returnsNSTDIOResult
.- Added
NSTDIOResult
.
- Added
nstd.os.unix.time
. - Added
NSTD_OS_[IOS|ANDROID|DRAGONFLY|FREEBSD|NETBSD|OPENBSD|BSD|HAIKU|NTO|SOLARIS]
. - Added
NSTDUnixIOResult
. - Added
nstd.os.unix.mutex
.
- Renamed the
clib
feature tocapi
. - Moved
NSTDUnichar
intocore
. - Added
nstd.mutex
. - Added
nstd.timed_mutex
. - Added
nstd.time
. - Updated
windows-sys
to version 0.45.
- Added
nstd_core_[ptr|slice|cstr][_mut]_new_unchecked
. nstd_core_ops_sh[l|r]_*
now takeNSTDUInt32
as their right operand.- Removed floating-point operations from
nstd.core.ops
. nstd_core_str[_mut]_get
now returnsNSTDOptionalUnichar
.nstd_core_cty_is_unicode
now takesNSTDChar32
.- Added
nstd_core_panic_with_msg
.
- Added
NSTDOptionalCString
.
- Added
nstd_fs_metadata
.
- Added
NSTDOptionalHeapPtr
.
- Added
NSTD_UNIX_IO_ERROR_IS_DIR
. - Added
nstd.os.unix.io
. nstd_os_windows_shared_lib_load
now accepts Unicode.- Added
nstd_os_windows_str_to_utf16
. - Added
nstd_os_unix_shared_lib_handle
.
nstd_shared_lib_load
now takesNSTDStr
.
- Added
NSTDOptionalSharedPtr
.
- Added
NSTDOptionalString
. nstd_string_push
now returnsNSTDAllocError
.nstd_string_pop
now returnsNSTDOptionalUnichar
.
- Added
NSTDOptionalVec
. - Added
nstd_vec_reserved
.
- Fixed missing panic handler compiler error for embedded builds.
- Added
nstd.env
.
- Added
nstd_core_ptr_raw_is_aligned
. - Added
nstd_core_ptr_raw_align[_mut]
. - Added
NSTDOptional[Ptr|Slice|CStr|Str][Mut]
. - Added
nstd_core_ptr_raw_dangling[_mut]
. - Added
nstd_core_str[_mut]_as_cstr
.
- Added
nstd_cstring_from_bytes
. - Added
nstd_cstring_from_cstr_unchecked
. - Removed
nstd_cstring_as_cstr_mut
.
nstd_fs_[absolute|read_to_string]
now returnsNSTDIOStringResult
.nstd_fs_read
now returnsNSTDIOBufferResult
.
nstd_heap_ptr_new_zeroed
is now unsafe.
nstd_io_read[_line]
now returnsNSTDIOStringResult
.- Added
NSTDIOBufferResult
&NSTDIOStringResult
.
- Added
NSTDWindowsHandle
. - Removed
NSTDWindowsSharedLibHandle
. - Removed
NSTDWindowsHeapHandle
. - Removed
NSTDUnixSharedLibHandle
. - [
unix.alloc
] Fixed linker error when using multiple versions of the crate.
nstd_shared_lib_load
now takesNSTDCStr
.
nstd_shared_ptr_new_zeroed
is now unsafe.
- Added
nstd_string_from_bytes
.
- Added
NSTDThreadResult
. nstd_thread_name
now returnsNSTDOptionalStr
.NSTDThreadDescriptor::name
is nowNSTDOptionalStr
.- Added
nstd_thread_current
.
- Added
nstd_vec_end[_mut]
. - Added
nstd_vec_set_len
. - Renamed
nstd_vec_as_mut_ptr
tonstd_vec_as_ptr_mut
.
- Internal safety improvements.
- Added
proc
. - Added
thread
. - Removed dependency for
libloading
.
- Added
NSTDUnixSharedLibHandle
. - Added
NSTD_OS_UNIX
.
- Second attempt to fix docs.rs build for non-x86_64 Unix systems.
- Attempted to fix docs.rs build for non-x86_64 Unix systems.
- The overflow behavior for the "release" profile has been set to panic.
- The panic behavior for the "release" profile has been set to abort.
str[_mut]_to_*
functions now returnNSTDOptional
.- Added
cstr[_mut]_[first|last][_const]
. - Added
ops
. - Added
cty_is_unicode
. - Renamed
str[_mut]_get_char
tostr[_mut]_get
. - Added
NSTDOptional
. - Added
NSTDResult
. - Added
panic
. - Made
math_[clamp|div_ceil|div_floor]_*
safe.
- Added
clear
. - Added
from_cstr
. - Renamed
to_bytes
tointo_bytes
.
- Added
NSTDFileResult
.
- Added
NSTDWindowsHeapHandle
. - Added
NSTDWindowsSharedLibHandle
. - Added
unix.alloc
. - Added
[unix|windows].shared_lib
. - Added
NSTDWindowsHeapResult
. - Added
windows_alloc_heap_validate
. - Added
windows_alloc_heap_size
. - Added
NSTDWindowsAllocError
. - Renamed
NSTDWindowsHeapHandle
toNSTDWindowsHeap
.
- Added
NSTDOptionalSharedLib
.
- Added
clear
. - Added
from_str
. - Renamed
to_bytes
tointo_bytes
.
- Added
clear
. - Added
from_slice
.
- Added
nstd.fs
. - Added
nstd.math
. - Added
asm
feature. - Made
NSTDChar
a primitive. - Updated windows-sys to version 0.42.
- Made
str[_mut]_substr
unsafe. - Made
str[_mut]_from_bytes
unsafe. - Made
str[_mut]_from_cstr
unsafe. - Renamed
cty
's ASCII functions (is_punctuation
,is_graphic
,to_lowercase
,to_uppercase
). - Added
mem_search
. - Added
str[_mut]_from_raw_cstr[_with_null]
. - Made
cstr[_mut]_get_null[_const]
unsafe. - Made
cstr[_mut]_from_raw[_with_null]
unsafe. - Renamed range types.
math_[clamp|div_ceil|div_floor]
are now unsafe.cty_is_[graphic|punctuation]
now takeNSTDChar
.- Added
math_div_floor_*
. - Added
math_pow_*
. - Added
math_abs_*
.
- Added
NSTD_OS_[LINUX|MACOS|WINDOWS]
constants. - Made
NSTDWindowsHeapHandle
a structure.
- Added
extern "C"
toNSTDAPI
(removesNSTDCPP[START|END]
).
- Removed
nstd_core_slice[_mut]_compare
.
- Removed
Const
postfix fromNSTDAnyConst
.
- Fixed
NSTDSlice[Mut]::as_slice[_mut]
returning a slice of incorrect length. - Renamed
fty
functions. - Added
nstd_core_str[_mut]_byte_len
. - Removed
Const
postfix fromNSTD[Ptr|Slice|Str|CStr]Const
.
- Added
nstd_string_byte_len
.
- Renamed
NSTD[I|U]Size
toNSTD[U]Int
.
- Fixed
math.div_ceil
functions returning the incorrect value.
- Added
nstd.alloc
. - Added
nstd.core
. - Added
nstd.cstring
. - Added
nstd.heap_ptr
. - Added
nstd.io
. - Added
nstd.os
. - Added
nstd.shared_lib
. - Added
nstd.shared_ptr
. - Added
nstd.string
. - Added
nstd.vec
.