<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Definitions SYSTEM "widlprocxml.dtd">
<Definitions>
  <webidl>interface A {
};

interface B {
};

interface C {
  void f(<ref>A</ref> x);
  void f(<ref>B</ref> x);
};

interface A {
void f(DOMString a);
void f([AllowAny] DOMString a, DOMString b, float... c);
void f();
void f(long a, DOMString b, optional DOMString c, float... d);
};</webidl>
  <Interface name="A" id="::A">
    <webidl>interface A {
};</webidl>
  </Interface>
  <Interface name="B" id="::B">
    <webidl>interface B {
};</webidl>
  </Interface>
  <Interface name="C" id="::C">
    <webidl>interface C {
  void f(<ref>A</ref> x);
  void f(<ref>B</ref> x);
};</webidl>
    <Operation name="f" id="::C::f">
      <webidl>  void f(<ref>A</ref> x);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="x">
          <Type name="A"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="f" id="::C::f">
      <webidl>  void f(<ref>B</ref> x);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="x">
          <Type name="B"/>
        </Argument>
      </ArgumentList>
    </Operation>
  </Interface>
  <Interface name="A" id="::A">
    <webidl>interface A {
void f(DOMString a);
void f([AllowAny] DOMString a, DOMString b, float... c);
void f();
void f(long a, DOMString b, optional DOMString c, float... d);
};</webidl>
    <Operation name="f" id="::A::f">
      <webidl> void f(DOMString a);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="a">
          <Type type="DOMString"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="f" id="::A::f">
      <webidl> void f([AllowAny] DOMString a, DOMString b, float... c);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="a">
          <ExtendedAttributeList>
            <ExtendedAttribute name="AllowAny">
              <webidl>AllowAny</webidl>
            </ExtendedAttribute>
          </ExtendedAttributeList>
          <Type type="DOMString"/>
        </Argument>
        <Argument name="b">
          <Type type="DOMString"/>
        </Argument>
        <Argument ellipsis="ellipsis" name="c">
          <Type type="float"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="f" id="::A::f">
      <webidl> void f();</webidl>
      <Type type="void"/>
      <ArgumentList/>
    </Operation>
    <Operation name="f" id="::A::f">
      <webidl> void f(long a, DOMString b, optional DOMString c, float... d);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument name="a">
          <Type type="long"/>
        </Argument>
        <Argument name="b">
          <Type type="DOMString"/>
        </Argument>
        <Argument optional="optional" name="c">
          <Type type="DOMString"/>
        </Argument>
        <Argument ellipsis="ellipsis" name="d">
          <Type type="float"/>
        </Argument>
      </ArgumentList>
    </Operation>
  </Interface>
</Definitions>
