TypedRest.CodeGeneration
0.1.0
dotnet add package TypedRest.CodeGeneration --version 0.1.0
NuGet\Install-Package TypedRest.CodeGeneration -Version 0.1.0
<PackageReference Include="TypedRest.CodeGeneration" Version="0.1.0" />
<PackageVersion Include="TypedRest.CodeGeneration" Version="0.1.0" />
<PackageReference Include="TypedRest.CodeGeneration" />
paket add TypedRest.CodeGeneration --version 0.1.0
#r "nuget: TypedRest.CodeGeneration, 0.1.0"
#:package TypedRest.CodeGeneration@0.1.0
#addin nuget:?package=TypedRest.CodeGeneration&version=0.1.0
#tool nuget:?package=TypedRest.CodeGeneration&version=0.1.0
Code Generation
Parses OpenAPI/Swagger documents and infers TypedRest Endpoints from patterns in the described paths.
dotnet add package TypedRest.CodeGeneration
This library only models the endpoints. To turn them into source code, combine it with TypedRest.CodeGeneration.CSharp. If you just want to generate a client for your API, use the source generator or the command-line tool instead; both are built on this library.
Usage
Register the x-typedrest extension parser when reading a document, then either read the endpoints the document already describes or infer them from its paths:
var reader = new OpenApiStreamReader(new OpenApiReaderSettings().AddTypedRest());
var doc = reader.Read(File.OpenRead("myapi.yml"), out _);
EntryEndpoint endpoints = doc.GetTypedRest() ?? doc.MatchTypedRestPatterns();
MatchTypedRestPatterns() arranges the paths into a tree and matches each node against the patterns in PatternRegistry.Default. Write the result back into the document with doc.SetTypedRest(endpoints) to persist or hand-edit it.
Extension points
Implement IPattern and add it to a PatternRegistry to recognize path shapes of your own:
var patterns = PatternRegistry.Default.Add(new MyPattern());
var endpoints = doc.MatchTypedRestPatterns(patterns);
Patterns added later take precedence; the first one that matches a node wins.
Implement IEndpoint and add it to an EndpointRegistry to introduce a new endpoint kind, then pass the registry to AddTypedRest() so that x-typedrest extensions using that kind can be parsed.
Related packages
- TypedRest.CodeGeneration.CSharp builds on this library, to generate C# source code for TypedRest clients.
Links
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.OpenApi.Readers (>= 1.6.29)
-
net10.0
- Microsoft.OpenApi.Readers (>= 1.6.29)
-
net8.0
- Microsoft.OpenApi.Readers (>= 1.6.29)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on TypedRest.CodeGeneration:
| Package | Downloads |
|---|---|
|
TypedRest.CodeGeneration.CSharp
Generates C# source code for TypedRest .NET clients from OpenAPI/Swagger documents. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0 | 112 | 8/1/2026 |