216 lines
6.8 KiB
Go
216 lines
6.8 KiB
Go
// Package profiler provides the Chrome Debugging Protocol
|
|
// commands, types, and events for the Profiler domain.
|
|
//
|
|
// Generated by the chromedp-gen command.
|
|
package profiler
|
|
|
|
// Code generated by chromedp-gen. DO NOT EDIT.
|
|
|
|
import (
|
|
"context"
|
|
|
|
cdp "github.com/knq/chromedp/cdp"
|
|
)
|
|
|
|
// EnableParams [no description].
|
|
type EnableParams struct{}
|
|
|
|
// Enable [no description].
|
|
func Enable() *EnableParams {
|
|
return &EnableParams{}
|
|
}
|
|
|
|
// Do executes Profiler.enable against the provided context and
|
|
// target handler.
|
|
func (p *EnableParams) Do(ctxt context.Context, h cdp.Handler) (err error) {
|
|
return h.Execute(ctxt, cdp.CommandProfilerEnable, nil, nil)
|
|
}
|
|
|
|
// DisableParams [no description].
|
|
type DisableParams struct{}
|
|
|
|
// Disable [no description].
|
|
func Disable() *DisableParams {
|
|
return &DisableParams{}
|
|
}
|
|
|
|
// Do executes Profiler.disable against the provided context and
|
|
// target handler.
|
|
func (p *DisableParams) Do(ctxt context.Context, h cdp.Handler) (err error) {
|
|
return h.Execute(ctxt, cdp.CommandProfilerDisable, nil, nil)
|
|
}
|
|
|
|
// SetSamplingIntervalParams changes CPU profiler sampling interval. Must be
|
|
// called before CPU profiles recording started.
|
|
type SetSamplingIntervalParams struct {
|
|
Interval int64 `json:"interval"` // New sampling interval in microseconds.
|
|
}
|
|
|
|
// SetSamplingInterval changes CPU profiler sampling interval. Must be called
|
|
// before CPU profiles recording started.
|
|
//
|
|
// parameters:
|
|
// interval - New sampling interval in microseconds.
|
|
func SetSamplingInterval(interval int64) *SetSamplingIntervalParams {
|
|
return &SetSamplingIntervalParams{
|
|
Interval: interval,
|
|
}
|
|
}
|
|
|
|
// Do executes Profiler.setSamplingInterval against the provided context and
|
|
// target handler.
|
|
func (p *SetSamplingIntervalParams) Do(ctxt context.Context, h cdp.Handler) (err error) {
|
|
return h.Execute(ctxt, cdp.CommandProfilerSetSamplingInterval, p, nil)
|
|
}
|
|
|
|
// StartParams [no description].
|
|
type StartParams struct{}
|
|
|
|
// Start [no description].
|
|
func Start() *StartParams {
|
|
return &StartParams{}
|
|
}
|
|
|
|
// Do executes Profiler.start against the provided context and
|
|
// target handler.
|
|
func (p *StartParams) Do(ctxt context.Context, h cdp.Handler) (err error) {
|
|
return h.Execute(ctxt, cdp.CommandProfilerStart, nil, nil)
|
|
}
|
|
|
|
// StopParams [no description].
|
|
type StopParams struct{}
|
|
|
|
// Stop [no description].
|
|
func Stop() *StopParams {
|
|
return &StopParams{}
|
|
}
|
|
|
|
// StopReturns return values.
|
|
type StopReturns struct {
|
|
Profile *Profile `json:"profile,omitempty"` // Recorded profile.
|
|
}
|
|
|
|
// Do executes Profiler.stop against the provided context and
|
|
// target handler.
|
|
//
|
|
// returns:
|
|
// profile - Recorded profile.
|
|
func (p *StopParams) Do(ctxt context.Context, h cdp.Handler) (profile *Profile, err error) {
|
|
// execute
|
|
var res StopReturns
|
|
err = h.Execute(ctxt, cdp.CommandProfilerStop, nil, &res)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return res.Profile, nil
|
|
}
|
|
|
|
// StartPreciseCoverageParams enable precise code coverage. Coverage data for
|
|
// JavaScript executed before enabling precise code coverage may be incomplete.
|
|
// Enabling prevents running optimized code and resets execution counters.
|
|
type StartPreciseCoverageParams struct {
|
|
CallCount bool `json:"callCount,omitempty"` // Collect accurate call counts beyond simple 'covered' or 'not covered'.
|
|
}
|
|
|
|
// StartPreciseCoverage enable precise code coverage. Coverage data for
|
|
// JavaScript executed before enabling precise code coverage may be incomplete.
|
|
// Enabling prevents running optimized code and resets execution counters.
|
|
//
|
|
// parameters:
|
|
func StartPreciseCoverage() *StartPreciseCoverageParams {
|
|
return &StartPreciseCoverageParams{}
|
|
}
|
|
|
|
// WithCallCount collect accurate call counts beyond simple 'covered' or 'not
|
|
// covered'.
|
|
func (p StartPreciseCoverageParams) WithCallCount(callCount bool) *StartPreciseCoverageParams {
|
|
p.CallCount = callCount
|
|
return &p
|
|
}
|
|
|
|
// Do executes Profiler.startPreciseCoverage against the provided context and
|
|
// target handler.
|
|
func (p *StartPreciseCoverageParams) Do(ctxt context.Context, h cdp.Handler) (err error) {
|
|
return h.Execute(ctxt, cdp.CommandProfilerStartPreciseCoverage, p, nil)
|
|
}
|
|
|
|
// StopPreciseCoverageParams disable precise code coverage. Disabling
|
|
// releases unnecessary execution count records and allows executing optimized
|
|
// code.
|
|
type StopPreciseCoverageParams struct{}
|
|
|
|
// StopPreciseCoverage disable precise code coverage. Disabling releases
|
|
// unnecessary execution count records and allows executing optimized code.
|
|
func StopPreciseCoverage() *StopPreciseCoverageParams {
|
|
return &StopPreciseCoverageParams{}
|
|
}
|
|
|
|
// Do executes Profiler.stopPreciseCoverage against the provided context and
|
|
// target handler.
|
|
func (p *StopPreciseCoverageParams) Do(ctxt context.Context, h cdp.Handler) (err error) {
|
|
return h.Execute(ctxt, cdp.CommandProfilerStopPreciseCoverage, nil, nil)
|
|
}
|
|
|
|
// TakePreciseCoverageParams collect coverage data for the current isolate,
|
|
// and resets execution counters. Precise code coverage needs to have started.
|
|
type TakePreciseCoverageParams struct{}
|
|
|
|
// TakePreciseCoverage collect coverage data for the current isolate, and
|
|
// resets execution counters. Precise code coverage needs to have started.
|
|
func TakePreciseCoverage() *TakePreciseCoverageParams {
|
|
return &TakePreciseCoverageParams{}
|
|
}
|
|
|
|
// TakePreciseCoverageReturns return values.
|
|
type TakePreciseCoverageReturns struct {
|
|
Result []*ScriptCoverage `json:"result,omitempty"` // Coverage data for the current isolate.
|
|
}
|
|
|
|
// Do executes Profiler.takePreciseCoverage against the provided context and
|
|
// target handler.
|
|
//
|
|
// returns:
|
|
// result - Coverage data for the current isolate.
|
|
func (p *TakePreciseCoverageParams) Do(ctxt context.Context, h cdp.Handler) (result []*ScriptCoverage, err error) {
|
|
// execute
|
|
var res TakePreciseCoverageReturns
|
|
err = h.Execute(ctxt, cdp.CommandProfilerTakePreciseCoverage, nil, &res)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return res.Result, nil
|
|
}
|
|
|
|
// GetBestEffortCoverageParams collect coverage data for the current isolate.
|
|
// The coverage data may be incomplete due to garbage collection.
|
|
type GetBestEffortCoverageParams struct{}
|
|
|
|
// GetBestEffortCoverage collect coverage data for the current isolate. The
|
|
// coverage data may be incomplete due to garbage collection.
|
|
func GetBestEffortCoverage() *GetBestEffortCoverageParams {
|
|
return &GetBestEffortCoverageParams{}
|
|
}
|
|
|
|
// GetBestEffortCoverageReturns return values.
|
|
type GetBestEffortCoverageReturns struct {
|
|
Result []*ScriptCoverage `json:"result,omitempty"` // Coverage data for the current isolate.
|
|
}
|
|
|
|
// Do executes Profiler.getBestEffortCoverage against the provided context and
|
|
// target handler.
|
|
//
|
|
// returns:
|
|
// result - Coverage data for the current isolate.
|
|
func (p *GetBestEffortCoverageParams) Do(ctxt context.Context, h cdp.Handler) (result []*ScriptCoverage, err error) {
|
|
// execute
|
|
var res GetBestEffortCoverageReturns
|
|
err = h.Execute(ctxt, cdp.CommandProfilerGetBestEffortCoverage, nil, &res)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return res.Result, nil
|
|
}
|