FUIPerformanceTracer
in package
Table of Contents
Properties
- $proxyClassCache : array<string, string>
- Cache of generated proxy class names mapped by original class name
Methods
- clearProxyCache() : void
- Clears the proxy class cache
- getTrace() : FUIPerformanceTrace
- Creates a performance trace snapshot from the given root view
- replaceViewWithTracingProxy() : FUIView
- Replaces the given view and all its children with tracing proxy views
- collectHierarchicalTracingData() : array<string, mixed>
- Collects tracing data and builds hierarchical structure
- copyViewProperties() : void
- Copies all properties from the source view to the target proxy
- generateTracingProxyClass() : string
- Generates the proxy class code that wraps a view with performance tracing
Properties
$proxyClassCache
Cache of generated proxy class names mapped by original class name
private
static array<string, string>
$proxyClassCache
= []
Methods
clearProxyCache()
Clears the proxy class cache
public
static clearProxyCache() : void
This can be useful during development when view classes are being modified
getTrace()
Creates a performance trace snapshot from the given root view
public
getTrace(FUIView $rootView) : FUIPerformanceTrace
Parameters
- $rootView : FUIView
Return values
FUIPerformanceTracereplaceViewWithTracingProxy()
Replaces the given view and all its children with tracing proxy views
public
replaceViewWithTracingProxy(FUIView $view) : FUIView
Parameters
- $view : FUIView
Return values
FUIViewcollectHierarchicalTracingData()
Collects tracing data and builds hierarchical structure
private
collectHierarchicalTracingData(FUIView $view) : array<string, mixed>
Parameters
- $view : FUIView
Return values
array<string, mixed>copyViewProperties()
Copies all properties from the source view to the target proxy
private
copyViewProperties(FUIView $source, object $target, ReflectionClass<string|int, FUIView> $reflectionClass) : void
Parameters
generateTracingProxyClass()
Generates the proxy class code that wraps a view with performance tracing
private
generateTracingProxyClass(string $proxyClassName, string $originalClassName) : string
Parameters
- $proxyClassName : string
- $originalClassName : string