Use $schema->sources
to get a list of all source names in a schema. Then you can grep for the one matching your table:
my ($class_name) = grep { $s->class($_)->table eq $table } $s->sources;
Question
Finding the table name for a class in DBIx::Class is straightforward, like this
my $s = DBIx::Class::Schema::Loader->connect('dbi:SQLite:foo.db');
$s->class($class_name)->table;
but how can I do the opposite, and get the class name from the name of the table in the database?
Solution
Use $schema->sources
to get a list of all source names in a schema. Then you can grep for the one matching your table:
my ($class_name) = grep { $s->class($_)->table eq $table } $s->sources;