package body MSHTML.IHTMLObjectElement2_Object is

   function namedRecordset
     (This       : IHTMLObjectElement2_Type;
      dataMember : GNATCOM.Types.VARIANT;
      hierarchy  : GNATCOM.Types.VARIANT
        := GNATCOM.Types.VARIANT_MISSING;
      Free       : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         IHTMLObjectElement2_namedRecordset,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => hierarchy,
          2 => dataMember),
         Free);
   end namedRecordset;

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

   function Get_classid
     (This : IHTMLObjectElement2_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLObjectElement2_Get_classid);
   end Get_classid;

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

   function Get_data
     (This : IHTMLObjectElement2_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLObjectElement2_Get_data);
   end Get_data;

end MSHTML.IHTMLObjectElement2_Object;

