packages/sql-semantics-mysql/bench/StatementBench.php

1<?php
2
3declare(strict_types=1);
4
5namespace Bench;
6
7use PhpBench\Attributes as Bench;
8use SqlSemantics\Facade\Semantics;
9use SqlSemantics\Platform\MySql\Dialect;
10
11/**
12 * Measures model construction and SQL reconstruction for this database package.
13 */
14#[Bench\Revs(10)]
15#[Bench\Iterations(3)]
16final class StatementBench
17{
18    /**
19     * Parses and prints an INSERT through the database statement models.
20     */
21    public function benchRoundTrip(): void
22    {
23        $semantics = new Semantics(Dialect::MySql);
24        $semantics->analyze('INSERT INTO items (id, name) VALUES (1, \'example\')')->toString();
25    }
26}
27