match

package
v0.0.0-...-2c9b28d Latest Latest
Warning

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

Go to latest
Published: Sep 23, 2024 License: MPL-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CallPath

type CallPath struct {
	ID            int
	Nodes         []wallynode.WallyNode
	NodeLimited   bool
	FilterLimited bool
	Recoverable   bool
}

type CallPaths

type CallPaths struct {
	Paths []*CallPath
}

func (*CallPaths) InsertPaths

func (cp *CallPaths) InsertPaths(nodes []wallynode.WallyNode, nodeLimited bool, filterLimited bool, simplify bool)

func (*CallPaths) Print

func (cp *CallPaths) Print()

type RouteMatch

type RouteMatch struct {
	MatchId    string
	Indicator  indicator.Indicator // It should be FuncInfo instead
	Params     map[string]string
	Pos        token.Position
	Signature  *types.Signature
	EnclosedBy string
	Module     string
	SSA        *SSAContext
}

func NewRouteMatch

func NewRouteMatch(indicator indicator.Indicator, pos token.Position) RouteMatch

func (*RouteMatch) MarshalJSON

func (r *RouteMatch) MarshalJSON() ([]byte, error)

type SSAContext

type SSAContext struct {
	PathLimited    bool
	EnclosedByFunc *ssa.Function
	CallPaths      *CallPaths
	SSAInstruction ssa.CallInstruction
	SSAFunc        *ssa.Function
	TargetPos      string
}

TODO: I don't love this here, maybe an SSA dedicated pkg would be better

Jump to

Keyboard shortcuts

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