package DBIx::Fast::Profile::SQLite;

use v5.38;
use Object::Pad 0.807;

class DBIx::Fast::Profile::SQLite :isa(DBIx::Fast::Profile::Base) {

    # SQLite has no native profiling/diagnostics. The driver-diagnostics methods
    # are inherited as no-ops from Base; only the core profiling methods (which
    # Base declares abstract / croaking) need stubbing here.
    method init             () {}
    method get_slow_queries () {}
    method get_stats        () {}
    method print_stats      () {}
}

1;

__END__

=head1 NAME

DBIx::Fast::Profile::SQLite - SQLite profiling stub

=head1 DESCRIPTION

Stub implementation of L<DBIx::Fast::Profile::Base> for SQLite. All methods
are no-ops since SQLite does not expose native profiling or performance schema
facilities. This class exists so that the profiling interface can be used
uniformly regardless of the database driver.

=head1 METHODS

All public methods from L<DBIx::Fast::Profile::Base> are implemented as no-ops:
C<init>, C<get_slow_queries>, C<get_query_profile>, C<get_stats>,
C<print_stats>, C<explain_query>, C<get_table_stats>, C<get_index_stats>,
C<analyze_indexes>, C<print_index_analysis>, C<get_index_metrics>,
C<monitor_connections>, C<get_current_connections>, C<get_processes>,
C<print_connection_monitor>, and C<start_connection_monitor>.

Method signatures mirror those of L<DBIx::Fast::Profile::MariaDB> so that
polymorphic callers can invoke them with the same arguments without
triggering signature errors; the arguments are simply ignored.

=head1 AUTHOR

SeHarrys

=head1 LICENSE

This is free software under the Artistic License 2.0.

=cut
