package body MSHTML.DispHTMLElementCollection_Object is

   function toString
     (This : DispHTMLElementCollection_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke (This, DispHTMLElementCollection_toString);
   end toString;

   procedure Put_length
     (This : DispHTMLElementCollection_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         DispHTMLElementCollection_Put_length,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_length;

   function Get_length
     (This : DispHTMLElementCollection_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispHTMLElementCollection_Get_length);
   end Get_length;

   function Getu_newEnum
     (This : DispHTMLElementCollection_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispHTMLElementCollection_Getu_newEnum);
   end Getu_newEnum;

   function item
     (This  : DispHTMLElementCollection_Type;
      name  : GNATCOM.Types.VARIANT
        := GNATCOM.Types.VARIANT_MISSING;
      index : GNATCOM.Types.VARIANT
        := GNATCOM.Types.VARIANT_MISSING;
      Free  : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         DispHTMLElementCollection_item,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => index,
          2 => name),
         Free);
   end item;

   function tags
     (This    : DispHTMLElementCollection_Type;
      tagName : GNATCOM.Types.VARIANT;
      Free    : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         DispHTMLElementCollection_tags,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => tagName),
         Free);
   end tags;

   function urns
     (This : DispHTMLElementCollection_Type;
      urn  : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         DispHTMLElementCollection_urns,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => urn),
         Free);
   end urns;

   function namedItem
     (This : DispHTMLElementCollection_Type;
      name : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         DispHTMLElementCollection_namedItem,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => name),
         Free);
   end namedItem;

   function Get_ie8_length
     (This : DispHTMLElementCollection_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispHTMLElementCollection_Get_ie8_length);
   end Get_ie8_length;

   function ie8_item
     (This  : DispHTMLElementCollection_Type;
      index : GNATCOM.Types.VARIANT;
      Free  : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         DispHTMLElementCollection_ie8_item,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => index),
         Free);
   end ie8_item;

   function ie8_namedItem
     (This : DispHTMLElementCollection_Type;
      name : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         DispHTMLElementCollection_ie8_namedItem,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => name),
         Free);
   end ie8_namedItem;

   function Get_constructor
     (This : DispHTMLElementCollection_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispHTMLElementCollection_Get_constructor);
   end Get_constructor;

end MSHTML.DispHTMLElementCollection_Object;

