Skip to content

BaseElement

Functions

MethodReturnsDescription
BaseElement:startProfileBaseElementStarts timing a method call
BaseElement:endProfileBaseElementEnds timing a method call and records statistics
BaseElement:benchmarkBaseElementEnables performance measurement for a method
BaseElement:logBenchmarkBaseElementLogs benchmark statistics for a method
BaseElement:stopBenchmarkBaseElementDisables performance measurement for a method
BaseElement:getBenchmarkStatsstatsRetrieves benchmark statistics for a method

BaseElement:startProfile(methodName)

Starts profiling a method

Parameters

  • methodName string The name of the method to profile

Returns

  • BaseElement self The element instance

BaseElement:endProfile(methodName)

Ends profiling a method

Parameters

  • methodName string The name of the method to stop profiling

Returns

  • BaseElement self The element instance

BaseElement:benchmark(methodName)

Enables benchmarking for a method

Parameters

  • methodName string The name of the method to benchmark

Returns

  • BaseElement self The element instance

Usage

lua
element:benchmark("render")
element:benchmark("render")

BaseElement:logBenchmark(methodName)

Logs benchmark statistics for a method

Parameters

  • methodName string The name of the method to log

Returns

  • BaseElement self The element instance

BaseElement:stopBenchmark(methodName)

Stops benchmarking for a method

Parameters

  • methodName string The name of the method to stop benchmarking

Returns

  • BaseElement self The element instance

BaseElement:getBenchmarkStats(methodName)

Gets benchmark statistics for a method

Parameters

  • methodName string The name of the method to get statistics for

Returns

  • stats The benchmark statistics or nil

Container

Extends: VisualElement

Functions

MethodReturnsDescription
Container:benchmarkContainerContainerRecursively enables benchmarking
Container:logContainerBenchmarksContainerRecursively logs benchmark statistics
Container:stopContainerBenchmarkContainerRecursively stops benchmarking

Container:benchmarkContainer(methodName)

Enables benchmarking for a container and all its children

Parameters

  • methodName string The method to benchmark

Returns

  • Container self The container instance

Usage

lua
container:benchmarkContainer("render")
container:benchmarkContainer("render")

Container:logContainerBenchmarks(methodName)

Logs benchmark statistics for a container and all its children

Parameters

  • methodName string The method to log

Returns

  • Container self The container instance

Container:stopContainerBenchmark(methodName)

Stops benchmarking for a container and all its children

Parameters

  • methodName string The method to stop benchmarking

Returns

  • Container self The container instance

Benchmark

This is the benchmark plugin. It provides performance measurement tools for elements and methods,with support for hierarchical profiling and detailed statistics. The plugin is meant to be used for very big projectswhere performance is critical. It allows you to measure the time taken by specific methods and log the results.

Functions

MethodReturnsDescription
Benchmark.start-Starts timing a custom operation
Benchmark.stop-Stops timing and logs results
Benchmark.getStatsstatsRetrieves benchmark statistics
Benchmark.clear-Removes a benchmark's data
Benchmark.clearAll-Removes all custom benchmark data

Benchmark.start(name, options?)

Starts a custom benchmark

Parameters

  • name string The name of the benchmark
  • options (optional) table Optional configuration

Benchmark.stop(name)

Stops a custom benchmark

Parameters

  • name string The name of the benchmark to stop

Benchmark.getStats(name)

Gets statistics for a benchmark

Parameters

  • name string The name of the benchmark

Returns

  • stats The benchmark statistics or nil

Benchmark.clear(name)

Clears a specific benchmark

Parameters

  • name string The name of the benchmark to clear

Benchmark.clearAll()

Clears all custom benchmarks

Released under the MIT License.