Standard Library
The Swift standard library provides the runtime behaviour for all built-in
types and protocols. tswift implements these entirely in Rust inside tswift-std.
The frontend provides type shapes; tswift-std provides the behaviour.
Legend: ✅ Implemented · 🟡 Partial · ⬜ Missing · 🚫 Out of scope.
Member counts are generated by python3 tools/stdlib-inventory/coverage.py --emit-json from the live runtime registry — nothing on this page is
hand-typed. Use the search box and status chips below to explore the full
member list.
Standard Library71%
363 implemented · 1 partial · 147 missing (511 total)
Array (32)
+funcImplemented+=funcImplemented==funcImplementedappendfuncImplementedcapacityvarImplementedcountvarImplementedcustomMirrorvarMissingdebugDescriptionvarImplementeddescriptionvarImplementeddistancefuncImplementedencodefuncImplementedendIndexvarImplementedformIndexfuncMissinghashfuncMissinghashValuevarImplementedindexfuncImplementedinitinitImplementedinsertfuncImplementedmutableSpanvarMissingremovefuncImplementedremoveAllfuncImplementedreplaceSubrangefuncImplementedreserveCapacityfuncImplementedspanvarMissingstartIndexvarImplementedsubscriptsubscriptImplementedwithContiguousMutableStorageIfAvailablefuncMissingwithContiguousStorageIfAvailablefuncMissingwithUnsafeBufferPointerfuncMissingwithUnsafeBytesfuncMissingwithUnsafeMutableBufferPointerfuncMissingwithUnsafeMutableBytesfuncMissing
ArraySlice (29)
==funcImplementedappendfuncImplementedcapacityvarImplementedcountvarImplementedcustomMirrorvarMissingdebugDescriptionvarImplementeddescriptionvarImplementeddistancefuncImplementedendIndexvarImplementedformIndexfuncMissinghashfuncMissinghashValuevarImplementedindexfuncImplementedinitinitMissinginsertfuncImplementedmutableSpanvarMissingremovefuncImplementedremoveAllfuncImplementedreplaceSubrangefuncImplementedreserveCapacityfuncImplementedspanvarMissingstartIndexvarImplementedsubscriptsubscriptImplementedwithContiguousMutableStorageIfAvailablefuncMissingwithContiguousStorageIfAvailablefuncMissingwithUnsafeBufferPointerfuncMissingwithUnsafeBytesfuncMissingwithUnsafeMutableBufferPointerfuncMissingwithUnsafeMutableBytesfuncMissing
Bool (13)
!funcPartial&&funcImplemented==funcImplementedcustomMirrorvarMissingcustomPlaygroundQuickLookvarMissingdescriptionvarImplementedencodefuncImplementedhashfuncMissinghashValuevarImplementedinitinitImplementedrandomfuncImplementedtogglefuncImplemented||funcImplemented
ClosedRange (21)
<funcImplemented==funcImplementedclampedfuncImplementedcontainsfuncImplementedcustomMirrorvarMissingdebugDescriptionvarImplementeddescriptionvarImplementeddistancefuncImplementedencodefuncMissingendIndexvarImplementedhashfuncMissinghashValuevarImplementedindexfuncImplementedinitinitMissingisEmptyvarImplementedlowerBoundletImplementedoverlapsfuncImplementedrelativefuncMissingstartIndexvarImplementedsubscriptsubscriptMissingupperBoundletImplemented
CollectionOfOne (12)
countvarImplementedcustomMirrorvarMissingdebugDescriptionvarImplementedendIndexvarImplementedindexfuncImplementedinitinitMissingmakeIteratorfuncImplementedmutableSpanvarMissingnextfuncImplementedspanvarMissingstartIndexvarImplementedsubscriptsubscriptMissing
ContiguousArray (30)
==funcImplementedappendfuncImplementedcapacityvarImplementedcountvarImplementedcustomMirrorvarMissingdebugDescriptionvarImplementeddescriptionvarImplementeddistancefuncImplementedencodefuncImplementedendIndexvarImplementedformIndexfuncMissinghashfuncMissinghashValuevarImplementedindexfuncImplementedinitinitImplementedinsertfuncImplementedmutableSpanvarMissingremovefuncImplementedremoveAllfuncImplementedreplaceSubrangefuncImplementedreserveCapacityfuncImplementedspanvarMissingstartIndexvarImplementedsubscriptsubscriptImplementedwithContiguousMutableStorageIfAvailablefuncMissingwithContiguousStorageIfAvailablefuncMissingwithUnsafeBufferPointerfuncMissingwithUnsafeBytesfuncMissingwithUnsafeMutableBufferPointerfuncMissingwithUnsafeMutableBytesfuncMissing
Dictionary (32)
<funcMissing==funcImplementedcapacityvarImplementedcompactMapValuesfuncImplementedcountvarImplementedcustomMirrorvarMissingdebugDescriptionvarImplementeddescriptionvarImplementedencodefuncImplementedendIndexvarImplementedfilterfuncImplementedformIndexfuncImplementedhashfuncMissinghashValuevarImplementedindexfuncImplementedinitinitImplementedisEmptyvarImplementedkeysvarImplementedmakeIteratorfuncImplementedmapValuesfuncImplementedmergefuncImplementedmergingfuncImplementednextfuncImplementedpopFirstfuncImplementedremovefuncImplementedremoveAllfuncImplementedremoveValuefuncImplementedreserveCapacityfuncImplementedstartIndexvarImplementedsubscriptsubscriptImplementedupdateValuefuncImplementedvaluesvarImplemented
Double (59)
*funcImplemented*=funcImplemented+funcImplemented+=funcImplemented-funcImplemented-=funcImplemented/funcImplemented/=funcImplementedaddProductfuncImplementedadvancedfuncImplementedbinadevarImplementedbitPatternvarImplementedcustomMirrorvarMissingcustomPlaygroundQuickLookvarMissingdebugDescriptionvarImplementeddescriptionvarImplementeddistancefuncImplementedencodefuncMissingexponentvarImplementedexponentBitCountvarImplementedexponentBitPatternvarImplementedformRemainderfuncImplementedformSquareRootfuncImplementedformTruncatingRemainderfuncImplementedgreatestFiniteMagnitudevarImplementedhashfuncMissinghashValuevarImplementedinfinityvarImplementedinitinitMissingisCanonicalvarImplementedisEqualfuncImplementedisFinitevarImplementedisInfinitevarImplementedisLessfuncImplementedisLessThanOrEqualTofuncImplementedisNaNvarImplementedisNormalvarImplementedisSignMinusvarImplementedisSignalingNaNvarImplementedisSubnormalvarImplementedisZerovarImplementedleastNonzeroMagnitudevarImplementedleastNormalMagnitudevarImplementedmagnitudevarImplementednanvarImplementednegatefuncImplementednextUpvarImplementedpivarImplementedquietNaNvarMissingroundfuncImplementedsignvarMissingsignalingNaNvarMissingsignificandvarImplementedsignificandBitCountvarImplementedsignificandBitPatternvarImplementedsignificandWidthvarMissingulpvarImplementedulpOfOnevarImplementedwritefuncMissing
EmptyCollection (10)
==funcImplementedcountvarImplementeddistancefuncImplementedendIndexvarImplementedindexfuncImplementedinitinitMissingmakeIteratorfuncImplementednextfuncImplementedstartIndexvarImplementedsubscriptsubscriptMissing
Int (50)
!=funcImplemented%funcImplemented%=funcImplemented&funcImplemented&<<funcImplemented&<<=funcMissing&=funcImplemented&>>funcImplemented&>>=funcMissing*funcImplemented*=funcImplemented+funcImplemented+=funcImplemented-funcImplemented-=funcImplemented/funcImplemented/=funcImplemented<funcImplemented<=funcImplemented==funcImplemented>funcImplemented>=funcImplemented^funcImplemented^=funcImplementedaddingReportingOverflowfuncImplementedadvancedfuncImplementedbitWidthvarImplementedbyteSwappedvarImplementedcodingKeyvarMissingcustomMirrorvarMissingcustomPlaygroundQuickLookvarMissingdistancefuncImplementeddividedReportingOverflowfuncImplementeddividingFullWidthfuncImplementedencodefuncMissinghashfuncMissinghashValuevarImplementedinitinitMissingleadingZeroBitCountvarImplementedmagnitudevarImplementedmultipliedFullWidthfuncImplementedmultipliedReportingOverflowfuncImplementednonzeroBitCountvarImplementedremainderReportingOverflowfuncImplementedsignumfuncImplementedsubtractingReportingOverflowfuncImplementedtrailingZeroBitCountvarImplementedwordsvarImplemented|funcImplemented|=funcImplemented
Optional (15)
!=funcImplemented==funcImplementedcustomMirrorvarMissingdebugDescriptionvarMissingencodefuncImplementedflatMapfuncImplementedhashfuncMissinghashValuevarImplementedinitinitImplementedmapfuncImplementednonecaseImplementedsomecaseImplementedtakefuncImplementedunsafelyUnwrappedvarImplemented~=funcMissing
Range (21)
==funcImplementedclampedfuncImplementedcontainsfuncImplementedcustomMirrorvarMissingdebugDescriptionvarImplementeddescriptionvarImplementeddistancefuncImplementedencodefuncMissingendIndexvarImplementedhashfuncMissinghashValuevarImplementedindexfuncImplementedindicesvarImplementedinitinitMissingisEmptyvarImplementedlowerBoundletImplementedoverlapsfuncImplementedrelativefuncMissingstartIndexvarImplementedsubscriptsubscriptMissingupperBoundletImplemented
ReversedCollection (12)
<funcImplemented==funcImplementeddistancefuncImplementedendIndexvarImplementedhashfuncMissinghashValuevarImplementedindexfuncImplementedmakeIteratorfuncImplementednextfuncMissingreversedfuncImplementedstartIndexvarImplementedsubscriptsubscriptMissing
Set (42)
<funcMissing==funcImplementedcapacityvarImplementedcontainsfuncImplementedcountvarImplementedcustomMirrorvarMissingdebugDescriptionvarMissingdescriptionvarImplementedencodefuncMissingendIndexvarImplementedfilterfuncImplementedfirstIndexfuncImplementedformIndexfuncImplementedformIntersectionfuncImplementedformSymmetricDifferencefuncImplementedformUnionfuncImplementedhashfuncMissinghashValuevarImplementedindexfuncImplementedinitinitMissinginsertfuncImplementedintersectionfuncImplementedisDisjointfuncImplementedisEmptyvarImplementedisStrictSubsetfuncImplementedisStrictSupersetfuncImplementedisSubsetfuncImplementedisSupersetfuncImplementedmakeIteratorfuncImplementednextfuncImplementedpopFirstfuncImplementedremovefuncImplementedremoveAllfuncImplementedremoveFirstfuncImplementedreserveCapacityfuncImplementedstartIndexvarImplementedsubscriptsubscriptMissingsubtractfuncImplementedsubtractingfuncImplementedsymmetricDifferencefuncImplementedunionfuncImplementedupdatefuncImplemented
String (53)
+funcImplemented+=funcImplemented<funcImplemented==funcImplementedappendfuncImplementedcharactersvarMissingcodingKeyvarMissingcountvarImplementedcustomMirrorvarMissingcustomPlaygroundQuickLookvarMissingdebugDescriptionvarImplementeddecodeCStringfuncMissingdescriptionvarImplementeddistancefuncImplementedencodefuncMissingencodedOffsetvarMissingendIndexvarImplementedhasPrefixfuncImplementedhasSuffixfuncImplementedhashfuncMissinghashValuevarImplementedindexfuncImplementedinitinitMissinginsertfuncImplementedisContiguousUTF8varMissingisEmptyvarImplementedlowercasedfuncImplementedmakeContiguousUTF8funcMissingmakeIteratorfuncMissingmaxfuncImplementedminfuncImplementedremovefuncImplementedremoveAllfuncImplementedremoveSubrangefuncImplementedreplaceSubrangefuncImplementedreserveCapacityfuncImplementedsamePositionfuncMissingspanvarMissingstartIndexvarImplementedsubscriptsubscriptMissingunicodeScalarsvarImplementeduppercasedfuncImplementedutf16varImplementedutf16OffsetfuncMissingutf8varImplementedutf8CStringvarMissingutf8SpanvarMissingwithCStringfuncMissingwithContiguousStorageIfAvailablefuncMissingwithMutableCharactersfuncMissingwithUTF8funcMissingwritefuncMissing~=funcMissing
Substring (33)
appendfuncImplementedbasevarImplementedcharactersvarImplementedcustomMirrorvarMissingcustomPlaygroundQuickLookvarMissingdebugDescriptionvarImplementeddescriptionvarImplementeddistancefuncImplementedendIndexvarImplementedfilterfuncImplementedformIndexfuncMissinghashValuevarImplementedindexfuncImplementedindicesvarMissinginitinitMissingisContiguousUTF8varImplementedlowercasedfuncImplementedmakeContiguousUTF8funcImplementedreplaceSubrangefuncImplementedspanvarMissingstartIndexvarImplementedsubscriptsubscriptMissingunicodeScalarsvarImplementeduppercasedfuncImplementedutf16varImplementedutf8varImplementedutf8SpanvarMissingwithCStringfuncMissingwithContiguousStorageIfAvailablefuncMissingwithMutableCharactersfuncMissingwithUTF8funcMissingwritefuncMissing~=funcMissing
(free functions) (47)
!=funcImplemented!==funcImplemented%funcImplemented%=funcImplemented<funcImplemented<=funcImplemented==funcImplemented===funcImplemented>funcImplemented>=funcImplementedabsfuncImplementedallfuncMissinganyfuncMissingassertfuncImplementedassertionFailurefuncImplementeddebugPrintfuncImplementeddumpfuncImplementedexchangefuncMissingextendLifetimefuncMissingfatalErrorfuncImplementedgetVaListfuncMissingisKnownUniquelyReferencedfuncMissingmaxfuncImplementedminfuncImplementednumericCastfuncImplementedpointwiseMaxfuncMissingpointwiseMinfuncMissingpreconditionfuncImplementedpreconditionFailurefuncImplementedprintfuncImplementedreadLinefuncImplementedrepeatElementfuncImplementedsequencefuncImplementedstridefuncImplementedswapfuncImplementedtranscodefuncMissingunsafeBitCastfuncMissingunsafeDowncastfuncMissingwithExtendedLifetimefuncMissingwithUnsafeBytesfuncMissingwithUnsafeMutableBytesfuncMissingwithUnsafeMutablePointerfuncMissingwithUnsafePointerfuncMissingwithUnsafeTemporaryAllocationfuncMissingwithVaListfuncMissingzipfuncImplemented~=funcImplemented
No members match your filters.
Known divergences
Documented honestly rather than papered over:
- Fitzpatrick skin-tone modifiers — the grapheme segmenter treats
emoji + modifier as two
Characters (ZWJ families work correctly). Unsafe*Pointerfamily,withUnsafe*,transcode, va-list — not honestly implementable in a tree-walking interpreter; intentionally excluded rather than faked.
What’s next
- Remaining
Stringmembers — UTF-8/UTF-16 view APIs,unicodeScalars. Collectionconformances for custom types — custom types infor-in,count, index subscripting.AsyncSequence—for awaitover custom types.
To see how these map to GitHub issues, visit the issue tracker.