Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / tools / perl-5.8.0 / lib / site_perl / 5.8.0 / Psh / Support / Builtins.pm
CommitLineData
86530b38
AT
1package Psh::Support::Builtins;
2
3my %builtins=();
4my %builtin_aliases= (
5 '.' => 'source',
6 'options' => 'option',
7 );
8
9# Returns a list of builtins
10sub get_builtin_commands {
11 return sort keys %builtins;
12}
13
14# Called during initialization
15sub build_autoload_list {
16 %builtins= ();
17
18 my $unshift='';
19 foreach my $tmp (@INC) {
20 my $tmpdir= Psh::OS::catdir($tmp,'Psh','Builtins');
21 if (-r $tmpdir) {
22 $unshift=$tmp;
23 my @files= Psh::OS::glob('*.pm',$tmpdir,1);
24 foreach( @files) {
25 s/\.pm$//;
26 $_= lc($_);
27 $builtins{$_}= 1;
28 }
29 }
30 }
31 unshift @INC, $unshift if $unshift;
32}
33
34sub is_builtin {
35 my $name= shift;
36 $name= $builtin_aliases{$name} if $builtin_aliases{$name};
37 return $name if $builtins{$name};
38 return 0;
39}
40
41
421;