docgen

package
v0.8.0-rc2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 28, 2023 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package docgen generates an OpenRPC spec for the Celestia Node. It has been inspired by and adapted from Filecoin's Lotus API implementation.

Index

Constants

View Source
const (
	APIVersion     = "v0.1.0"
	APIDescription = "The Celestia Node API is the collection of RPC methods that " +
		"can be used to interact with the services provided by Celestia Data Availability Nodes."
	APIName  = "Celestia Node API"
	DocsURL  = "https://github.com/celestiaorg/celestia-node"
	DocsName = "Celestia Node GitHub"
)

Variables

View Source
var ExampleValues = map[reflect.Type]interface{}{
	reflect.TypeOf(""):         "string value",
	reflect.TypeOf(uint64(42)): uint64(42),
	reflect.TypeOf(uint32(42)): uint32(42),

	reflect.TypeOf(int64(42)):             int64(42),
	reflect.TypeOf(byte(7)):               byte(7),
	reflect.TypeOf(float64(42)):           float64(42),
	reflect.TypeOf(true):                  true,
	reflect.TypeOf([]byte{}):              []byte("byte array"),
	reflect.TypeOf(byzantine.BadEncoding): byzantine.BadEncoding,
}

Functions

func ExampleValue

func ExampleValue(t, parent reflect.Type) (interface{}, error)

func NewOpenRPCDocument

func NewOpenRPCDocument(comments Comments) *go_openrpc_reflect.Document

func OpenRPCSchemaTypeMapper

func OpenRPCSchemaTypeMapper(ty reflect.Type) *jsonschema.Type

Types

type Comments

type Comments = map[string]string

func ParseCommentsFromNodebuilderModules

func ParseCommentsFromNodebuilderModules(moduleNames ...string) Comments

type Visitor

type Visitor struct {
	Methods map[string]ast.Node
}

func (*Visitor) Visit

func (v *Visitor) Visit(node ast.Node) ast.Visitor

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL