Swift modules in TypeScript
TypeScript implementations of 8 Swift standard library functions across 1 module. Each function is individually importable and tree-shakeable.
String- componentsSeparatedBy
- hasPrefix
- hasSuffix
- padding
- rangeOf
- replacingOccurrences
- split
- trimmingCharacters
We have 8 Swift functions so far - help us add more
Got a rainy Sunday afternoon and a taste for a porting puzzle?
- Get inspiration from the Swift documentation.
- Click "New file" in the appropriate folder on GitHub. This will fork the project to your account, directly add the file to it, and send a Pull Request to us.
We will then review it. If it's useful to the project and in line with our contributing guidelines your work will become part of Locutus and you'll be automatically credited in the authors section accordingly.
Upstream Surface Inventory 3/6235 shipped · 596 next 0%
Locutus tracks 178 upstream namespaces for Swift and sorts them into what is already shipped, what we still want, what we intentionally keep, and what still needs a decision.
This inventory now tracks a broader Swift standard-library slice via docs-backed catalogs, excluding the wider Foundation ecosystem.
In progress
Shipped (8)
Next
Swift String helpers are strong plain-value portability targets.
!=.....<++=<<===>>=~=allSatisfyappendapplyingcharactersCharacterViewcodingKeycompactMapcontainscountcustomMirrorcustomPlaygroundQuickLookdebugDescriptiondecodeCStringdescriptiondifferencedistancedropdropFirstdropLastElementelementsEqualencodeencodedOffsetendIndexenumeratedfilterfirstfirstIndexflatMapforEachformIndexhashindexIndexIndexDistanceindicesinitinsertisContiguousUTF8isEmptyIteratorlastlastIndexlazylexicographicallyPrecedeslowercasedmakeContiguousUTF8makeIteratormapmaxminnextpopLastprefixrandomElementreduceremoveremoveAllremoveFirstremoveLastremoveSubrangeremoveSubrangesremovingSubrangesreplaceSubrangereserveCapacityreversedsamePositionshuffledsortedstartIndexstartssubscriptSubSequencesuffixunderestimatedCountUnicodeScalarIndexunicodeScalarsUnicodeScalarViewuppercasedutf16utf16OffsetUTF16Viewutf8utf8CStringUTF8ViewwithContiguousStorageIfAvailablewithCStringwithMutableCharacterswithUTF8write
Intentional extras
Substring
Next
Substring transforms are strong plain-value portability targets when modeled as strings.
!=.....<++=<<===>>=~=allSatisfyappendapplyingbasecharactersCharacterViewcompactMapcontainscountcustomMirrorcustomPlaygroundQuickLookdebugDescriptiondescriptiondifferencedistancedropdropFirstdropLastElementelementsEqualendIndexenumeratedfilterfirstfirstIndexflatMapforEachformIndexhashhasPrefixhasSuffixindexIndexindicesIndicesinitinsertisContiguousUTF8isEmptylastlastIndexlazylexicographicallyPrecedeslowercasedmakeContiguousUTF8makeIteratormapmaxminpopFirstpopLastprefixrandomElementreduceremoveremoveAllremoveFirstremoveLastremoveSubrangeremoveSubrangesremovingSubrangesreplaceSubrangereserveCapacityreversedshuffledsortedsplitstartIndexstartssubscriptSubSequencesuffixunderestimatedCountunicodeScalarsUnicodeScalarViewuppercasedutf16UTF16Viewutf8UTF8ViewwithContiguousStorageIfAvailablewithCStringwithMutableCharacterswithUTF8write
Double
Next
Scalar floating-point helpers are strong Swift portability targets.
--=!=.....<**=//=++=<<===>>=addingProductaddProductadvancedbinadebitPatterncustomMirrorcustomPlaygroundQuickLookdebugDescriptiondescriptiondistanceencodeexponentExponentexponentBitCountexponentBitPatternfloatingPointClassformRemainderformSquareRootformTruncatingRemaindergreatestFiniteMagnitudehashinfinityinitisCanonicalisEqualisFiniteisInfiniteisLessisLessThanOrEqualToisNaNisNormalisSignalingNaNisSubnormalisTotallyOrderedisZeroleastNonzeroMagnitudeleastNormalMagnitudemagnitudeMagnitudemaximummaximumMagnitudeminimumminimumMagnitudenannegatenextDownnextUppiradixrandomRawSignificandremainderroundroundedscalarCountsignsignalingNaNsignificandsignificandBitCountsignificandBitPatternsignificandWidthSIMD16StorageSIMD2StorageSIMD32StorageSIMD4StorageSIMD64StorageSIMD8StorageSIMDMaskScalarsquareRootsubscripttruncatingRemainderulpulpOfOnewritezero
Float
Next
Scalar floating-point helpers are strong Swift portability targets.
--=!=.....<**=//=++=<<===>>=addingProductaddProductadvancedbinadebitPatterncustomMirrorcustomPlaygroundQuickLookdebugDescriptiondescriptiondistanceencodeexponentExponentexponentBitCountexponentBitPatternfloatingPointClassformRemainderformSquareRootformTruncatingRemaindergreatestFiniteMagnitudehashinfinityinitisCanonicalisEqualisFiniteisInfiniteisLessisLessThanOrEqualToisNaNisNormalisSignalingNaNisSubnormalisTotallyOrderedisZeroleastNonzeroMagnitudeleastNormalMagnitudemagnitudeMagnitudemaximummaximumMagnitudeminimumminimumMagnitudenannegatenextDownnextUppiradixrandomRawSignificandremainderroundroundedscalarCountsignsignalingNaNsignificandsignificandBitCountsignificandBitPatternsignificandWidthSIMD16StorageSIMD2StorageSIMD32StorageSIMD4StorageSIMD64StorageSIMD8StorageSIMDMaskScalarsquareRootsubscripttruncatingRemainderulpulpOfOnewritezero
Array
Next
Array transforms are strong Swift plain-value portability targets.
!=++===allSatisfyappendapplyingcapacitycompactMapcontainscountcustomMirrordebugDescriptiondescriptiondifferencedistancedropdropFirstdropLastelementsEqualencodeendIndexenumeratedfilterfirstfirstIndexflatMapforEachformIndexhashindexIndexindicesIndicesinitinsertisEmptyIteratorjoinedlastlastIndexlazylexicographicallyPrecedesmakeIteratormapmaxminmoveSubrangespartitionpopLastprefixrandomElementreduceremoveremoveAllremoveFirstremoveLastremoveSubrangeremoveSubrangesremovingSubrangesreplaceSubrangereserveCapacityreversereversedshuffleshuffledsortsortedsplitstartIndexstartssubscriptsuffixswapAtunderestimatedCountwithContiguousMutableStorageIfAvailablewithContiguousStorageIfAvailablewithUnsafeBufferPointerwithUnsafeByteswithUnsafeMutableBufferPointerwithUnsafeMutableBytes
Dictionary
Next
Dictionary readers and pure transforms are strong Swift plain-value portability targets.
!=.....<<<===>>=allSatisfycapacitycompactMapcompactMapValuescontainscountcustomMirrordebugDescriptiondescriptiondistancedropdropFirstdropLastElementelementsEqualencodeendIndexenumeratedfilterfirstfirstIndexflatMapforEachformIndexhashindexIndexindicesinitisEmptyIteratorjoinedkeysKeyslazylexicographicallyPrecedesmakeIteratormapmapValuesmaxmergemergingminmoveSubrangesnextpartitionpopFirstprefixrandomElementreduceremoveremoveAllremoveValueremovingSubrangesreserveCapacityreversedshuffledsortedsplitstartIndexstartssubscriptSubSequencesuffixswapAtunderestimatedCountupdateValuevaluesValueswithContiguousMutableStorageIfAvailablewithContiguousStorageIfAvailable
Character
Next
Character classification and case helpers are strong Swift plain-value portability targets.
!=.....<<<===>>=asciiValuecustomMirrorcustomPlaygroundQuickLookdebugDescriptiondescriptionhashhexDigitValueinitisASCIIisCasedisCurrencySymbolisHexDigitisLetterisLowercaseisMathSymbolisNewlineisNumberisPunctuationisSymbolisUppercaseisWhitespaceisWholeNumberlowercasedunicodeScalarsUnicodeScalarViewuppercasedutf16UTF16Viewutf8UTF8ViewwholeNumberValuewrite
Bool
Next
Boolean parsing and description helpers have a clean plain-value contract.
!!=&&==||customMirrorcustomPlaygroundQuickLookdescriptionencodehashinitrandomtoggle
Int
Next
Core integer arithmetic and comparison helpers are strong Swift portability targets.
+==magnitude
Explicit non-goals (123)
-
-Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
-=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
!=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
...Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
..<Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
*Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
*=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
/Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
/=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
&Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
&-Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
&-=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
&*Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
&*=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
&+Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
&+=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
&<<Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
&<<=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
&=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
&>>Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
&>>=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
%Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
%=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
^Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
^=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
+=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
<Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
<<Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
<<=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
<=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
>Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
>=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
>>Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
>>=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
|Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
|=Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
~Integer scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
addingReportingOverflowInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
advancedInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
allSatisfyInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
bigEndianInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
bitWidthInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
byteSwappedInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
codingKeyInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
compactMapInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
containsInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
countInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
customMirrorInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
customPlaygroundQuickLookInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
descriptionInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
differenceInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
distanceInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
dividedReportingOverflowInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
dividingFullWidthInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
dropInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
dropFirstInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
dropLastInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
elementsEqualInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
encodeInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
endIndexInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
enumeratedInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
filterInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
firstInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
firstIndexInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
flatMapInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
forEachInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
formIndexInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
hashInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
indexInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
indicesInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
IndicesInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
initInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
IntegerLiteralTypeInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
isEmptyInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
isMultipleInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
isSignedInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
lastInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
lastIndexInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
lazyInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
leadingZeroBitCountInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
lexicographicallyPrecedesInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
littleEndianInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
MagnitudeInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
makeIteratorInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
mapInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
maxInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
minInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
multipliedFullWidthInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
multipliedReportingOverflowInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
negateInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
nonzeroBitCountInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
prefixInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
quotientAndRemainderInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
randomInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
randomElementInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
reduceInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
remainderReportingOverflowInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
removingSubrangesInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
reversedInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
scalarCountInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
shuffledInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
signumInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
SIMD16StorageInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
SIMD2StorageInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
SIMD32StorageInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
SIMD4StorageInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
SIMD64StorageInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
SIMD8StorageInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
SIMDMaskScalarInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
sortedInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
splitInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
startIndexInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
startsInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
subscriptInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
SubSequenceInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
subtractingReportingOverflowInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
suffixInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
trailingZeroBitCountInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
underestimatedCountInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
withContiguousStorageIfAvailableInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
wordsInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
WordsInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default. -
zeroInteger scalar namespaces mix protocol, collection, randomness, and reflection APIs too broadly for one stable plain-value contract by default.
Optional
Next
Optional mapping over plain values still has a useful portability contract.
map
Explicit non-goals (13)
-
!=Optional wrappers do not map directly to one stable plain-value contract. -
==Optional wrappers do not map directly to one stable plain-value contract. -
~=Optional wrappers do not map directly to one stable plain-value contract. -
customMirrorOptional wrappers do not map directly to one stable plain-value contract. -
debugDescriptionOptional wrappers do not map directly to one stable plain-value contract. -
encodeOptional wrappers do not map directly to one stable plain-value contract. -
flatMapOptional wrappers do not map directly to one stable plain-value contract. -
hashOptional wrappers do not map directly to one stable plain-value contract. -
initOptional wrappers do not map directly to one stable plain-value contract. -
noneOptional wrappers do not map directly to one stable plain-value contract. -
someOptional wrappers do not map directly to one stable plain-value contract. -
takeOptional wrappers do not map directly to one stable plain-value contract. -
unsafelyUnwrappedOptional wrappers do not map directly to one stable plain-value contract.