Documentation ¶
Overview ¶
Package cosmosanalysis provides a toolset for statically analysing Cosmos SDK's source code and blockchain source codes based on the Cosmos SDK
Index ¶
- Variables
- func DeepFindImplementation(modulePath string, interfaceList []string) (found []string, err error)
- func FindAppFilePath(chainRoot string) (path string, err error)
- func FindImplementation(modulePath string, interfaceList []string) (found []string, err error)
- func FindImplementationInFile(n ast.Node, interfaceList []string) (found []string)
- func IsChainPath(path string) error
- func ValidateGoMod(module *modfile.File) error
- type ErrPathNotChain
Constants ¶
This section is empty.
Variables ¶
var AppImplementation = []string{
"AppCodec",
"TxConfig",
"RegisterAPIRoutes",
}
Functions ¶
func DeepFindImplementation ¶
DeepFindImplementation functions the same as FindImplementation, but walks recursively through the folder structure Useful if implementations might be in sub folders.
func FindAppFilePath ¶
FindAppFilePath looks for the app file that implements the interfaces listed in AppImplementation.
func FindImplementation ¶
FindImplementation finds the name of all types that implement the provided interface.
func FindImplementationInFile ¶
FindImplementationInFile find all struct implements the interfaceList into an ast.File.
func IsChainPath ¶
IsChainPath returns nil if path contains a cosmos chain.
func ValidateGoMod ¶
ValidateGoMod check if the cosmos-sdk and the tendermint packages are imported.
Types ¶
type ErrPathNotChain ¶
type ErrPathNotChain struct {
// contains filtered or unexported fields
}
ErrPathNotChain is returned by IsChainPath() when path is not a chain path.
func (ErrPathNotChain) Error ¶
func (e ErrPathNotChain) Error() string