class

Analyzer::CSharp::Wolverine

Inherits Analyzer::CSharp::Common < Analyzer < FileHelper < Reference < Object

Wolverine.Http endpoints: [WolverineGet("/orders/{id}")] on a method of any class. Route values bind by name, simple types from the query string, and the first other concrete type is the JSON body; every remaining parameter is resolved from the container (IDocumentSession, IMessageBus…).

Constants

NOT_INPUT_ATTRIBUTES = Set {"Entity", "Document", "Aggregate", "ReadAggregate", "WriteAggregate", "NotBody"}

Loaded from storage by the route id (Marten/EF), or explicitly not the body: never request input of their own.

PLACEHOLDER = /\{([^{}]+)\}/
ROUTE_ATTR_RE = /\AWolverine(Get|Post|Put|Patch|Delete|Head|Options)\z/

Class methods

tech_name
Source

Instance methods

analyze
Source
tech

Instance-side view of the same declaration. The per-file rescues live on this base class, which has no way to name the analyzer that is running inside them, so a skipped file could not be attributed to a tech. Deriving it from analyzer_for keeps the name written exactly once.

Source