Releases: gershnik/objc-helpers
Releases · gershnik/objc-helpers
3.1
Added
BlockUtil.h
andCoDispatch.h
are now supported on Linux. See Linux notes for more details
3.0
Changed
BlockUtil.h
:makeBlock
functionality is completely reworked. New functionality:- Wrap any callables including mutable lambdas or any other callable that provides non-const
operator()
. - If the callable is movable it will be moved into the block, not copied. It will also be moved if the block is "copied to heap"
by ObjectiveC runtime orBlock_copy
in plain C++. - It is possible to use move-only callables.
- All of this is accomplished with NO dynamic memory allocation
- Wrap any callables including mutable lambdas or any other callable that provides non-const
NSStringCharAccess
now conforms completely tostd::ranges::random_access_range
BoxUtil.h
: boxing now detects comparability and enablescompare:
not just via presence of operator<=>
but also when only operators<
,==
,<=
etc. are present.BoxUtil.h
: generated ObjectiveC box classes now have names unique to each shared library/main executable, preventing collisions if multiple modules use boxing.
Added
NSStringUtil.h
: addedmakeNSString
,makeCFString
andmakeStdString
conversion functions between C++ character ranges and ObjectiveC strings.
See README for more details
2.3
2.2
Changed
- Performance optimizations for CoDispatch
2.1
Added
- all variants of
resumeOn
andresumeOnMainQueue
now acceptwhen
argument to request that the resumption happens no earlier than the specified time. When used withco_await resumeOn(currentQueue, when)
this allows the caller to sleep asynchronously without blocking its queue.
2.0
Added
- CoDispatch.h: A collection of classes and functions that allows you to write asynchronous C++ coroutines and generators that execute on GCD dispatch queues. Detailed guide is available here
- Ability to subtract
NSStringCharAccess::iterator
s - Ability to get starting index of
NSStringCharAccess::iterator
inside its string - Extensive unit tests for all functionality
Fixed
- Crash in
NSNumberEqual
when second argument isnullptr
NSStringCharAccess::empty()
returning opposite result- Compiler warnings in pedantic mode