}
}
}
-
-/**
- * Subclass ScopedCallback to avoid call_user_func_array(), which is slow
- *
- * This class should not be used outside of SectionProfiler
- */
-class SectionProfileCallback extends ScopedCallback {
- /** @var SectionProfiler */
- protected $profiler;
- /** @var string */
- protected $section;
-
- /**
- * @param SectionProfiler $profiler
- * @param string $section
- */
- public function __construct( SectionProfiler $profiler, $section ) {
- parent::__construct( null );
- $this->profiler = $profiler;
- $this->section = $section;
- }
-
- function __destruct() {
- $this->profiler->profileOutInternal( $this->section );
- }
-}