2 ### Class Dump: Dump SFD info #################################################
10 my $class = ref($proto) || $proto;
12 $self->{SFD
} = $params{'sfd'};
13 bless ($self, $class);
19 my $sfd = $self->{SFD
};
21 print "SFD information\n";
22 print "¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\n";
23 print "Copyright: $$sfd{'copyright'}\n";
24 print "RCS ID: $$sfd{'id'}\n";
25 print "Module name: $$sfd{'libname'}\n";
26 print "Module base: $$sfd{'base'}\n";
27 print "Module base type: $$sfd{'basetype'}\n";
28 print "Module base names: $$sfd{'basename'}, $$sfd{'BASENAME'}, ";
29 print "$$sfd{'Basename'}\n";
31 print "Include files: ";
32 print join ("\n ", @
{$$sfd{'includes'}});
34 print "Type definitions: ";
35 if ($#{@{$sfd->{typedefs}}} != -1) {
36 print join ("\n ", @
{$$sfd{'typedefs'}});
45 my $prototype = $params{'prototype'};
46 my $sfd = $self->{SFD
};
48 print "* Line $$prototype{'line'}: $$prototype{'funcname'}()\n";
49 print " Type: " . ucfirst $$prototype{'type'} . "\n";
50 print " Subtype: $prototype->{subtype}\n";
51 if ($prototype->{real_funcname
} ne '') {
52 print " Real function name:\t$$prototype{'real_funcname'}\n";
54 print " Visibility: ";
55 print $$prototype{'private'} == 0 ?
"Public\n" : "Private\n";
56 print " Library offset/bias: -$$prototype{'bias'}\n";
57 print " Available since: V$$prototype{'version'}\n";
58 print " Comment: $$prototype{'comment'}\n";
61 print $prototype->{nr
} ?
"Yes\n" : "No\n";
63 print $prototype->{nb
} ?
"Yes\n" : "No\n";
65 print " Return value: $$prototype{'return'}\n";
67 print join (",\n\t\t\t\t", @
{$$prototype{'args'}});
69 print " Argument names: ";
70 print join (", ", @
{$$prototype{'argnames'}});
72 print " Local arguments: ";
73 print join (",\n\t\t\t\t", @
{$$prototype{'___args'}});
75 print " Local argument names: ";
76 print join (", ", @
{$$prototype{'___argnames'}});
78 print " Argument types: ";
79 print join (",\n\t\t\t\t", @
{$$prototype{'argtypes'}});
84 # value => $proto_line,
86 # $$prototype{'return'} = $return;
87 # $$prototype{'funcname'} = $name;
88 # @{$$prototype{'args'}} = ();
89 # @{$$prototype{'regs'}} = split(/,/,lc $registers); # Make regs lower case
90 # @{$$prototype{'argnames'}} = (); # Initialize array
91 # @{$$prototype{'argtypes'}} = (); # Initialize array