|
Lines 43-49
struct( idlDocument => {
a/Source/WebCore/bindings/scripts/IDLParser.pm_sec1
|
| 43 |
# Used to represent 'interface' blocks |
43 |
# Used to represent 'interface' blocks |
| 44 |
struct( domInterface => { |
44 |
struct( domInterface => { |
| 45 |
name => '$', # Class identifier |
45 |
name => '$', # Class identifier |
| 46 |
parents => '@', # List of strings |
46 |
parent => '$', # Parent class identifier |
| 47 |
constants => '@', # List of 'domConstant' |
47 |
constants => '@', # List of 'domConstant' |
| 48 |
functions => '@', # List of 'domFunction' |
48 |
functions => '@', # List of 'domFunction' |
| 49 |
anonymousFunctions => '@', # List of 'domFunction' |
49 |
anonymousFunctions => '@', # List of 'domFunction' |
|
Lines 496-502
sub parseInterface
a/Source/WebCore/bindings/scripts/IDLParser.pm_sec2
|
| 496 |
my $interfaceNameToken = $self->getToken(); |
496 |
my $interfaceNameToken = $self->getToken(); |
| 497 |
$self->assertTokenType($interfaceNameToken, IdentifierToken); |
497 |
$self->assertTokenType($interfaceNameToken, IdentifierToken); |
| 498 |
$interface->name($interfaceNameToken->value()); |
498 |
$interface->name($interfaceNameToken->value()); |
| 499 |
push(@{$interface->parents}, @{$self->parseInheritance()}); |
499 |
$interface->parent($self->parseInheritance()); |
| 500 |
$self->assertTokenValue($self->getToken(), "{", __LINE__); |
500 |
$self->assertTokenValue($self->getToken(), "{", __LINE__); |
| 501 |
my $interfaceMembers = $self->parseInterfaceMembers(); |
501 |
my $interfaceMembers = $self->parseInterfaceMembers(); |
| 502 |
$self->assertTokenValue($self->getToken(), "}", __LINE__); |
502 |
$self->assertTokenValue($self->getToken(), "}", __LINE__); |
|
Lines 695-701
sub parseException
a/Source/WebCore/bindings/scripts/IDLParser.pm_sec3
|
| 695 |
$self->assertTokenType($exceptionNameToken, IdentifierToken); |
695 |
$self->assertTokenType($exceptionNameToken, IdentifierToken); |
| 696 |
$interface->name($exceptionNameToken->value()); |
696 |
$interface->name($exceptionNameToken->value()); |
| 697 |
$interface->isException(1); |
697 |
$interface->isException(1); |
| 698 |
push(@{$interface->parents}, @{$self->parseInheritance()}); |
698 |
$interface->parent($self->parseInheritance()); |
| 699 |
$self->assertTokenValue($self->getToken(), "{", __LINE__); |
699 |
$self->assertTokenValue($self->getToken(), "{", __LINE__); |
| 700 |
my $exceptionMembers = $self->parseExceptionMembers(); |
700 |
my $exceptionMembers = $self->parseExceptionMembers(); |
| 701 |
$self->assertTokenValue($self->getToken(), "}", __LINE__); |
701 |
$self->assertTokenValue($self->getToken(), "}", __LINE__); |
|
Lines 731-747
sub parseExceptionMembers
a/Source/WebCore/bindings/scripts/IDLParser.pm_sec4
|
| 731 |
sub parseInheritance |
731 |
sub parseInheritance |
| 732 |
{ |
732 |
{ |
| 733 |
my $self = shift; |
733 |
my $self = shift; |
| 734 |
my @parent = (); |
734 |
my $parent; |
| 735 |
|
735 |
|
| 736 |
my $next = $self->nextToken(); |
736 |
my $next = $self->nextToken(); |
| 737 |
if ($next->value() eq ":") { |
737 |
if ($next->value() eq ":") { |
| 738 |
$self->assertTokenValue($self->getToken(), ":", __LINE__); |
738 |
$self->assertTokenValue($self->getToken(), ":", __LINE__); |
| 739 |
my $scopedName = $self->parseScopedName(); |
739 |
$parent = $self->parseScopedName(); |
| 740 |
push(@parent, $scopedName); |
|
|
| 741 |
# Multiple inheritance? |
| 742 |
push(@parent, @{$self->parseIdentifiers()}); |
| 743 |
} |
740 |
} |
| 744 |
return \@parent; |
741 |
return $parent; |
| 745 |
} |
742 |
} |
| 746 |
|
743 |
|
| 747 |
sub parseEnum |
744 |
sub parseEnum |