aspect

package
v1.1.0-rc.1 Latest Latest
Warning

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

Go to latest
Published: Feb 6, 2025 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func InjectedPaths added in v1.0.0

func InjectedPaths(list []*Aspect) []string

InjectedPaths returns the list of import paths that may be injected by the supplied list of aspects. The output list is not sorted in any particular way but does not contain duplicted entries.

Types

type Aspect

type Aspect struct {
	// JoinPoint determines whether the injection should be performed on a given node or not.
	JoinPoint join.Point
	// Advice is the set of actions to use for performing the actual injection.
	Advice []advice.Advice
	// TracerInternal determines whether the aspect can be woven into the tracer's internal code.
	TracerInternal bool
	// ID is the identifier of the aspect within its configuration file.
	ID string
}

Aspect binds advice.Advice to a join.Point, effectively defining a complete code injection.

func (*Aspect) AddedImports

func (a *Aspect) AddedImports() (imports []string)

func (*Aspect) Hash added in v1.0.0

func (a *Aspect) Hash(h *fingerprint.Hasher) error

func (*Aspect) UnmarshalYAML

func (a *Aspect) UnmarshalYAML(node *yaml.Node) error

Directories

Path Synopsis
Package advice provides implementations of the injector.Action interface for common AST changes.
Package advice provides implementations of the injector.Action interface for common AST changes.
Package join provides implementations of the InjectionPoint interface for common injection points.
Package join provides implementations of the InjectionPoint interface for common injection points.

Jump to

Keyboard shortcuts

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