analyzerjs

package
v0.8.1 Latest Latest
Warning

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

Go to latest
Published: Sep 24, 2026 License: AGPL-3.0, AGPL-3.0-or-later Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Profile           = "corvint-analyzer-candidate/experimental"
	Family            = "javascript-typescript"
	MaxInputs         = 128
	MaxSourceBytes    = 1 << 20
	MaxFacts          = 4096
	MaxOutputBytes    = 1 << 20
	MaxDepth          = 32
	MaxEnvelopeDepth  = 8
	MaxEnvelopeTokens = 4096
	MaxFeatures       = 64
	MaxTextBytes      = 4096
)

Variables

This section is empty.

Functions

func EncodeCandidate

func EncodeCandidate(candidate Candidate) ([]byte, error)

func FailureReason

func FailureReason(err error) string

Types

type Candidate

type Candidate struct {
	Profile           string
	Family            string
	RequestID         string `json:"request_id"`
	Status            string
	Reason            string `json:"reason,omitempty"`
	ScopeID           string `json:"scope_id,omitempty"`
	CompilationUnitID string `json:"compilation_unit_id,omitempty"`
	Target            Target
	InputEchoes       []InputEcho `json:"input_echoes,omitempty"`
	Facts             []Fact
	// contains filtered or unexported fields
}

func Analyze

func Analyze(request Request) (Candidate, error)

func Rejection

func Rejection(requestID string, reason string) Candidate

func RejectionForRequest

func RejectionForRequest(request Request, reason string) Candidate

func (Candidate) MarshalJSON

func (candidate Candidate) MarshalJSON() ([]byte, error)

type Fact

type Fact struct {
	Kind           string `json:"kind"`
	InputHandle    string `json:"input_handle"`
	RelatedHandle  string `json:"related_handle"`
	Subject        string `json:"subject"`
	Predicate      string `json:"predicate"`
	Value          string `json:"value"`
	InstanceID     string `json:"instance_id"`
	EvidenceSHA256 string `json:"evidence_sha256"`
}

type Input

type Input struct {
	Handle        string `json:"handle"`
	Family        string `json:"family"`
	Path          string `json:"path"`
	SHA256        string `json:"sha256"`
	ContentBase64 string `json:"content_base64"`
}

type InputEcho

type InputEcho struct {
	Handle string `json:"handle"`
	Family string `json:"family"`
	Path   string `json:"path"`
	SHA256 string `json:"sha256"`
}

type Request

type Request struct {
	Profile           string  `json:"profile"`
	Family            string  `json:"family"`
	RequestID         string  `json:"request_id"`
	ScopeID           string  `json:"scope_id"`
	CompilationUnitID string  `json:"compilation_unit_id"`
	Target            Target  `json:"target"`
	Inputs            []Input `json:"inputs"`
	// contains filtered or unexported fields
}

func DecodeRequest

func DecodeRequest(raw []byte) (Request, error)

type Target

type Target struct {
	OS           string   `json:"os"`
	Architecture string   `json:"architecture"`
	ABI          string   `json:"abi"`
	Features     []string `json:"features"`
}

Jump to

Keyboard shortcuts

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