Added Router type

This commit is contained in:
2023-07-09 21:24:24 +02:00
parent a05f4b2e36
commit 12b5b4a799
5 changed files with 343 additions and 163 deletions

334
testdata/github.txt vendored
View File

@ -1,131 +1,203 @@
/authorizations
/authorizations/:id
/applications/:client_id/tokens/:access_token
/events
/repos/:owner/:repo/events
/networks/:owner/:repo/events
/orgs/:org/events
/users/:user/received_events
/users/:user/received_events/public
/users/:user/events
/users/:user/events/public
/users/:user/events/orgs/:org
/feeds
/notifications
/repos/:owner/:repo/notifications
/notifications/threads/:id
/notifications/threads/:id/subscription
/repos/:owner/:repo/stargazers
/users/:user/starred
/user/starred
/user/starred/:owner/:repo
/repos/:owner/:repo/subscribers
/users/:user/subscriptions
/user/subscriptions
/repos/:owner/:repo/subscription
/user/subscriptions/:owner/:repo
/users/:user/gists
/gists
/gists/:id
/gists/:id/star
/repos/:owner/:repo/git/blobs/:sha
/repos/:owner/:repo/git/commits/:sha
/repos/:owner/:repo/git/refs
/repos/:owner/:repo/git/tags/:sha
/repos/:owner/:repo/git/trees/:sha
/issues
/user/issues
/orgs/:org/issues
/repos/:owner/:repo/issues
/repos/:owner/:repo/issues/:number
/repos/:owner/:repo/assignees
/repos/:owner/:repo/assignees/:assignee
/repos/:owner/:repo/issues/:number/comments
/repos/:owner/:repo/issues/:number/events
/repos/:owner/:repo/labels
/repos/:owner/:repo/labels/:name
/repos/:owner/:repo/issues/:number/labels
/repos/:owner/:repo/milestones/:number/labels
/repos/:owner/:repo/milestones
/repos/:owner/:repo/milestones/:number
/emojis
/gitignore/templates
/gitignore/templates/:name
/meta
/rate_limit
/users/:user/orgs
/user/orgs
/orgs/:org
/orgs/:org/members
/orgs/:org/members/:user
/orgs/:org/public_members
/orgs/:org/public_members/:user
/orgs/:org/teams
/teams/:id
/teams/:id/members
/teams/:id/members/:user
/teams/:id/repos
/teams/:id/repos/:owner/:repo
/user/teams
/repos/:owner/:repo/pulls
/repos/:owner/:repo/pulls/:number
/repos/:owner/:repo/pulls/:number/commits
/repos/:owner/:repo/pulls/:number/files
/repos/:owner/:repo/pulls/:number/merge
/repos/:owner/:repo/pulls/:number/comments
/user/repos
/users/:user/repos
/orgs/:org/repos
/repositories
/repos/:owner/:repo
/repos/:owner/:repo/contributors
/repos/:owner/:repo/languages
/repos/:owner/:repo/teams
/repos/:owner/:repo/tags
/repos/:owner/:repo/branches
/repos/:owner/:repo/branches/:branch
/repos/:owner/:repo/collaborators
/repos/:owner/:repo/collaborators/:user
/repos/:owner/:repo/comments
/repos/:owner/:repo/commits/:sha/comments
/repos/:owner/:repo/comments/:id
/repos/:owner/:repo/commits
/repos/:owner/:repo/commits/:sha
/repos/:owner/:repo/readme
/repos/:owner/:repo/keys
/repos/:owner/:repo/keys/:id
/repos/:owner/:repo/downloads
/repos/:owner/:repo/downloads/:id
/repos/:owner/:repo/forks
/repos/:owner/:repo/hooks
/repos/:owner/:repo/hooks/:id
/repos/:owner/:repo/releases
/repos/:owner/:repo/releases/:id
/repos/:owner/:repo/releases/:id/assets
/repos/:owner/:repo/stats/contributors
/repos/:owner/:repo/stats/commit_activity
/repos/:owner/:repo/stats/code_frequency
/repos/:owner/:repo/stats/participation
/repos/:owner/:repo/stats/punch_card
/repos/:owner/:repo/statuses/:ref
/search/repositories
/search/code
/search/issues
/search/users
/legacy/issues/search/:owner/:repository/:state/:keyword
/legacy/repos/search/:keyword
/legacy/user/search/:keyword
/legacy/user/email/:email
/users/:user
/user
/users
/user/emails
/users/:user/followers
/user/followers
/users/:user/following
/user/following
/user/following/:user
/users/:user/following/:target_user
/users/:user/keys
/user/keys
/user/keys/:id
GET /authorizations
GET /authorizations/:id
POST /authorizations
DELETE /authorizations/:id
GET /applications/:client_id/tokens/:access_token
DELETE /applications/:client_id/tokens
DELETE /applications/:client_id/tokens/:access_token
GET /events
GET /repos/:owner/:repo/events
GET /networks/:owner/:repo/events
GET /orgs/:org/events
GET /users/:user/received_events
GET /users/:user/received_events/public
GET /users/:user/events
GET /users/:user/events/public
GET /users/:user/events/orgs/:org
GET /feeds
GET /notifications
GET /repos/:owner/:repo/notifications
PUT /notifications
PUT /repos/:owner/:repo/notifications
GET /notifications/threads/:id
GET /notifications/threads/:id/subscription
PUT /notifications/threads/:id/subscription
DELETE /notifications/threads/:id/subscription
GET /repos/:owner/:repo/stargazers
GET /users/:user/starred
GET /user/starred
GET /user/starred/:owner/:repo
PUT /user/starred/:owner/:repo
DELETE /user/starred/:owner/:repo
GET /repos/:owner/:repo/subscribers
GET /users/:user/subscriptions
GET /user/subscriptions
GET /repos/:owner/:repo/subscription
PUT /repos/:owner/:repo/subscription
DELETE /repos/:owner/:repo/subscription
GET /user/subscriptions/:owner/:repo
PUT /user/subscriptions/:owner/:repo
DELETE /user/subscriptions/:owner/:repo
GET /users/:user/gists
GET /gists
GET /gists/:id
POST /gists
PUT /gists/:id/star
DELETE /gists/:id/star
GET /gists/:id/star
POST /gists/:id/forks
DELETE /gists/:id
GET /repos/:owner/:repo/git/blobs/:sha
POST /repos/:owner/:repo/git/blobs
GET /repos/:owner/:repo/git/commits/:sha
POST /repos/:owner/:repo/git/commits
GET /repos/:owner/:repo/git/refs
POST /repos/:owner/:repo/git/refs
GET /repos/:owner/:repo/git/tags/:sha
POST /repos/:owner/:repo/git/tags
GET /repos/:owner/:repo/git/trees/:sha
POST /repos/:owner/:repo/git/trees
GET /issues
GET /user/issues
GET /orgs/:org/issues
GET /repos/:owner/:repo/issues
GET /repos/:owner/:repo/issues/:number
POST /repos/:owner/:repo/issues
GET /repos/:owner/:repo/assignees
GET /repos/:owner/:repo/assignees/:assignee
GET /repos/:owner/:repo/issues/:number/comments
POST /repos/:owner/:repo/issues/:number/comments
GET /repos/:owner/:repo/issues/:number/events
GET /repos/:owner/:repo/labels
GET /repos/:owner/:repo/labels/:name
POST /repos/:owner/:repo/labels
DELETE /repos/:owner/:repo/labels/:name
GET /repos/:owner/:repo/issues/:number/labels
POST /repos/:owner/:repo/issues/:number/labels
DELETE /repos/:owner/:repo/issues/:number/labels/:name
PUT /repos/:owner/:repo/issues/:number/labels
DELETE /repos/:owner/:repo/issues/:number/labels
GET /repos/:owner/:repo/milestones/:number/labels
GET /repos/:owner/:repo/milestones
GET /repos/:owner/:repo/milestones/:number
POST /repos/:owner/:repo/milestones
DELETE /repos/:owner/:repo/milestones/:number
GET /emojis
GET /gitignore/templates
GET /gitignore/templates/:name
POST /markdown
POST /markdown/raw
GET /meta
GET /rate_limit
GET /users/:user/orgs
GET /user/orgs
GET /orgs/:org
GET /orgs/:org/members
GET /orgs/:org/members/:user
DELETE /orgs/:org/members/:user
GET /orgs/:org/public_members
GET /orgs/:org/public_members/:user
PUT /orgs/:org/public_members/:user
DELETE /orgs/:org/public_members/:user
GET /orgs/:org/teams
GET /teams/:id
POST /orgs/:org/teams
DELETE /teams/:id
GET /teams/:id/members
GET /teams/:id/members/:user
PUT /teams/:id/members/:user
DELETE /teams/:id/members/:user
GET /teams/:id/repos
GET /teams/:id/repos/:owner/:repo
PUT /teams/:id/repos/:owner/:repo
DELETE /teams/:id/repos/:owner/:repo
GET /user/teams
GET /repos/:owner/:repo/pulls
GET /repos/:owner/:repo/pulls/:number
POST /repos/:owner/:repo/pulls
GET /repos/:owner/:repo/pulls/:number/commits
GET /repos/:owner/:repo/pulls/:number/files
GET /repos/:owner/:repo/pulls/:number/merge
PUT /repos/:owner/:repo/pulls/:number/merge
GET /repos/:owner/:repo/pulls/:number/comments
PUT /repos/:owner/:repo/pulls/:number/comments
GET /user/repos
GET /users/:user/repos
GET /orgs/:org/repos
GET /repositories
POST /user/repos
POST /orgs/:org/repos
GET /repos/:owner/:repo
GET /repos/:owner/:repo/contributors
GET /repos/:owner/:repo/languages
GET /repos/:owner/:repo/teams
GET /repos/:owner/:repo/tags
GET /repos/:owner/:repo/branches
GET /repos/:owner/:repo/branches/:branch
DELETE /repos/:owner/:repo
GET /repos/:owner/:repo/collaborators
GET /repos/:owner/:repo/collaborators/:user
PUT /repos/:owner/:repo/collaborators/:user
DELETE /repos/:owner/:repo/collaborators/:user
GET /repos/:owner/:repo/comments
GET /repos/:owner/:repo/commits/:sha/comments
POST /repos/:owner/:repo/commits/:sha/comments
GET /repos/:owner/:repo/comments/:id
DELETE /repos/:owner/:repo/comments/:id
GET /repos/:owner/:repo/commits
GET /repos/:owner/:repo/commits/:sha
GET /repos/:owner/:repo/readme
GET /repos/:owner/:repo/keys
GET /repos/:owner/:repo/keys/:id
POST /repos/:owner/:repo/keys
DELETE /repos/:owner/:repo/keys/:id
GET /repos/:owner/:repo/downloads
GET /repos/:owner/:repo/downloads/:id
DELETE /repos/:owner/:repo/downloads/:id
GET /repos/:owner/:repo/forks
POST /repos/:owner/:repo/forks
GET /repos/:owner/:repo/hooks
GET /repos/:owner/:repo/hooks/:id
POST /repos/:owner/:repo/hooks
POST /repos/:owner/:repo/hooks/:id/tests
DELETE /repos/:owner/:repo/hooks/:id
POST /repos/:owner/:repo/merges
GET /repos/:owner/:repo/releases
GET /repos/:owner/:repo/releases/:id
POST /repos/:owner/:repo/releases
DELETE /repos/:owner/:repo/releases/:id
GET /repos/:owner/:repo/releases/:id/assets
GET /repos/:owner/:repo/stats/contributors
GET /repos/:owner/:repo/stats/commit_activity
GET /repos/:owner/:repo/stats/code_frequency
GET /repos/:owner/:repo/stats/participation
GET /repos/:owner/:repo/stats/punch_card
GET /repos/:owner/:repo/statuses/:ref
POST /repos/:owner/:repo/statuses/:ref
GET /search/repositories
GET /search/code
GET /search/issues
GET /search/users
GET /legacy/issues/search/:owner/:repository/:state/:keyword
GET /legacy/repos/search/:keyword
GET /legacy/user/search/:keyword
GET /legacy/user/email/:email
GET /users/:user
GET /user
GET /users
GET /user/emails
POST /user/emails
DELETE /user/emails
GET /users/:user/followers
GET /user/followers
GET /users/:user/following
GET /user/following
GET /user/following/:user
GET /users/:user/following/:target_user
PUT /user/following/:user
DELETE /user/following/:user
GET /users/:user/keys
GET /user/keys
GET /user/keys/:id
POST /user/keys
DELETE /user/keys/:id