# Copyright (c) 2023 Yuki Kimoto
# MIT License
class File::Basename::Instance {
version_from File::Basename;
allow File::Basename;
use File::Basename::Instance::Win32;
use File::Basename::Instance::Unix;
use Sys;
use Sys::OS;
# Class Methods
private static method new : File::Basename::Instance () {
my $self : File::Basename::Instance;
if (Sys::OS->is_windows) {
$self = File::Basename::Instance::Win32->new;
}
else {
$self = File::Basename::Instance::Unix->new;
}
return $self;
}
# Instance Methods
protected method fileparse : string[] ($path : string) { die "Not implemented"; }
protected method basename : string ($path : string) { die "Not implemented"; }
protected method dirname : string ($path : string) { die "Not implemented"; }
}