Components

Every current physical component is listed here from the runtime’s generated CMake catalogue—not from a second hand-maintained inventory.

41 physical92 direct edgesSource 6d429559

Select direct needs

set(SHARP_RUNTIME_COMPONENTS
    Net.Http.Json
    IO.Hashing
)
set(SHARP_RUNTIME_BUILD_TESTS OFF CACHE BOOL "" FORCE)
add_subdirectory(sharp-runtime)

target_link_libraries(app PRIVATE
    SharpRuntime::Net.Http.Json
    SharpRuntime::IO.Hashing
)

CMake recursively enables public and private production dependencies. Consumers link only their direct targets.

Component families

Complete physical catalogue

ComponentKindRepresentative headerProduction dependenciesExternal/platform
Core.BasestaticSharpRuntime/Experimental/Property.hpp——
ConsolestaticSystem/Console.hppCore.Base—
UristaticSystem/Uri.hppCore.Base—
TimeZonestaticSystem/InvalidTimeZoneException.hppCore.Base—
BuffersinterfaceSystem/Buffers/ArrayBufferWriter.hppCore.Base—
Collections.CoreinterfaceSystem/Collections/ArrayList.hppCore.Base—
Collections.BlockinginterfaceSystem/Collections/Concurrent/BlockingCollection.hppCollections.CoreCore.BaseThreading—
Collections.AsyncinterfaceSystem/Collections/Generic/IAsyncEnumerable.hppThreading—
Collections.ObjectModelinterfaceSystem/Collections/ObjectModel/ObservableCollection.hppCollections.CoreComponentModelCore.Base—
ComponentModelinterfaceSystem/ComponentModel/AsyncCompletedEventArgs.hppCore.Base—
DiagnosticsstaticSystem/Diagnostics/CodeAnalysis/CodeAnalysisAttributes.hppCore.Base—
GlobalizationstaticSystem/Globalization/Calendar.hppCore.Base—
NumericsstaticSystem/Numerics/BigInteger.hppBuffersCollections.CoreCore.Base—
RuntimestaticSystem/Runtime/AmbiguousImplementationException.hppCollections.CoreCore.Base—
TextstaticSystem/Text/ASCIIEncoding.hppBuffersCore.Base—
Text.JsonstaticSystem/Text/Json/JsonCommentHandling.hppCore.BaseTextCollections.Core (private)—
Text.RegularExpressionsinterfaceSystem/Text/RegularExpressions/Capture.hppCore.Base—
ThreadingstaticSystem/AsyncCallback.hppCore.BaseTimeZone—
Threading.TasksstaticSystem/IAsyncDisposable.hppCore.BaseThreading—
Threading.ChannelsinterfaceSystem/Threading/Channels/BoundedChannelFullMode.hppCore.BaseThreading.Tasks—
TimersstaticSystem/Timers/ElapsedEventArgs.hppComponentModelCore.BaseThreading (private)—
IOstaticSystem/BinaryData.hppCore.BaseUriTimeZone (private)—
IO.CompressionstaticSystem/IO/Compression/CompressionArgumentValidation.hppBuffersCore.BaseIOZLIB (private)
IO.Compression.ZipstaticSystem/IO/Compression/CompressionLevel.hppIOCore.Base (private)vendored miniz (private)
IO.HashingstaticSystem/IO/Hashing/Adler32.hppCore.BaseIO—
StoragestaticSharpRuntime/Storage/StoragePaths.hpp—parent-provided SDL3 on Android (private)
IO.IsolatedStoragestaticSystem/IO/IsolatedStorage/IsolatedStorage.hppCore.BaseIOStorage (private)—
NetstaticSystem/Net/Cookie.hppCollections.CoreComponentModelCore.BaseUriws2_32 on Windows (private)
Net.SocketsstaticSystem/Net/Sockets/IPPacketInformation.hppCore.BaseIONetThreading.Tasks—
Net.HttpstaticSystem/Net/Http/ByteArrayContent.hppCore.BaseIONetThreadingThreading.TasksUri (private)—
Net.Http.HeadersstaticSystem/Net/Http/Headers/AuthenticationHeaderValue.hppCollections.CoreCore.BaseUriNet (private)—
Net.Http.JsoninterfaceSystem/Net/Http/Json/HttpClientJsonExtensions.hppCore.BaseNet.HttpText.JsonThreading.Tasks—
Net.MimestaticSystem/Net/Mime/ContentType.hppCollections.CoreCore.Base—
Net.NetworkInformationstaticSystem/Net/NetworkInformation/IPStatus.hppComponentModelCore.BaseNetThreading.Tasks—
Net.SecurityinterfaceSystem/Net/Security/AuthenticationLevel.hppCore.Base—
Net.WebSocketsstaticSystem/Net/WebSockets/ClientWebSocket.hppComponentModelCore.BaseNetNet.SocketsThreadingThreading.TasksUri—
SecurityinterfaceSystem/Security/Authentication/AuthenticationException.hppCore.Base—
Security.CryptographystaticSystem/Security/Cryptography/AuthenticationTagMismatchException.hppCore.Base—
Security.Cryptography.RandomstaticSystem/Security/Cryptography/RNGCryptoServiceProvider.hppCore.Basebcrypt on Windows (private)
XmlstaticSystem/Xml/ConformanceLevel.hppCore.BaseUriDiagnostics (private)vendored tinyxml2 (public)
Xml.LinqstaticSystem/Xml/Linq/Extensions.hppCore.BaseXml—

Compatibility targets

TargetRoleDirect contents
Corecompatibility umbrellaConsole, Core.Base, TimeZone, Uri
Collectionscompatibility umbrellaCollections.Async, Collections.Blocking, Collections.Core, Collections.ObjectModel
Xml.XPathalias of XmlXml
Allcompatibility umbrellaBuffers, Collections.Async, Collections.Blocking, Collections.Core, Collections.ObjectModel, ComponentModel, Console, Core.Base, Diagnostics, Globalization, IO, IO.Compression, IO.Compression.Zip, IO.Hashing, IO.IsolatedStorage, Net, Net.Http, Net.Http.Headers, Net.Http.Json, Net.Mime, Net.NetworkInformation, Net.Security, Net.Sockets, Net.WebSockets, Numerics, Runtime, Security, Security.Cryptography, Security.Cryptography.Random, Storage, Text, Text.Json, Text.RegularExpressions, Threading, Threading.Channels, Threading.Tasks, TimeZone, Timers, Uri, Xml, Xml.Linq

SharpRuntime::Headers is an always-present support target rather than a selectable component. The raw legacy SHARP_RUNTIME target forwards to All only in a complete configuration.

Synchronization

tools/sync_components.py reads docs/ComponentCatalog.md from a pinned Sharp Runtime checkout and records the source SHA. tools/validate_site.py can compare the committed data against that checkout, preventing catalogue drift.