<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Definitions SYSTEM "widlprocxml.dtd">
<Definitions>
  <webidl>interface IntegerSet {
  readonly attribute unsigned long cardinality;

  void union(long... ints);
  void intersection(long... ints);
};</webidl>
  <Interface name="IntegerSet" id="::IntegerSet">
    <webidl>interface IntegerSet {
  readonly attribute unsigned long cardinality;

  void union(long... ints);
  void intersection(long... ints);
};</webidl>
    <Attribute readonly="readonly" name="cardinality" id="::IntegerSet::cardinality">
      <webidl>  readonly attribute unsigned long cardinality;</webidl>
      <Type type="unsigned long"/>
    </Attribute>
    <Operation name="union" id="::IntegerSet::union">
      <webidl>  void union(long... ints);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument ellipsis="ellipsis" name="ints">
          <Type type="long"/>
        </Argument>
      </ArgumentList>
    </Operation>
    <Operation name="intersection" id="::IntegerSet::intersection">
      <webidl>  void intersection(long... ints);</webidl>
      <Type type="void"/>
      <ArgumentList>
        <Argument ellipsis="ellipsis" name="ints">
          <Type type="long"/>
        </Argument>
      </ArgumentList>
    </Operation>
  </Interface>
</Definitions>
