/* * Copyright 2013 Piotr Caban for CodeWeavers * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ import "oaidl.idl"; #include "vbscript_defs.h" [ helpstring("Microsoft VBScript Regular Expressions 5.5"), id(3), uuid(3f4daca7-160d-11d2-a8e9-00104b365c9f), version(5.5) ] library VBScript_RegExp_55 { importlib("stdole2.tlb"); [ dual, hidden, nonextensible, odl, oleautomation, uuid(3f4daca0-160d-11d2-a8e9-00104b365c9f), ] interface IRegExp : IDispatch { [id(DISPID_REGEXP_PATTERN), propget] HRESULT Pattern([out, retval] BSTR *pPattern); [id(DISPID_REGEXP_PATTERN), propput] HRESULT Pattern([in] BSTR pPattern); [id(DISPID_REGEXP_IGNORECASE), propget] HRESULT IgnoreCase([out, retval] VARIANT_BOOL *pIgnoreCase); [id(DISPID_REGEXP_IGNORECASE), propput] HRESULT IgnoreCase([in] VARIANT_BOOL pIgnoreCase); [id(DISPID_REGEXP_GLOBAL), propget] HRESULT Global([out, retval] VARIANT_BOOL *pGlobal); [id(DISPID_REGEXP_GLOBAL), propput] HRESULT Global([in] VARIANT_BOOL pGlobal); [id(DISPID_REGEXP_EXECUTE)] HRESULT Execute( [in] BSTR sourceString, [out, retval] IDispatch **ppMatches); [id(DISPID_REGEXP_TEST)] HRESULT Test( [in] BSTR sourceString, [out, retval] VARIANT_BOOL *pMatch); [id(DISPID_REGEXP_REPLACE)] HRESULT Replace( [in] BSTR sourceString, [in] BSTR replaceString, [out, retval] BSTR *pDestString); } [ dual, hidden, nonextensible, odl, oleautomation, uuid(3f4dacb0-160d-11d2-a8e9-00104b365c9f) ] interface IRegExp2 : IDispatch { [id(DISPID_REGEXP_PATTERN), propget] HRESULT Pattern([out, retval] BSTR *pPattern); [id(DISPID_REGEXP_PATTERN), propput] HRESULT Pattern([in] BSTR pPattern); [id(DISPID_REGEXP_IGNORECASE), propget] HRESULT IgnoreCase([out, retval] VARIANT_BOOL *pIgnoreCase); [id(DISPID_REGEXP_IGNORECASE), propput] HRESULT IgnoreCase([in] VARIANT_BOOL pIgnoreCase); [id(DISPID_REGEXP_GLOBAL), propget] HRESULT Global([out, retval] VARIANT_BOOL *pGlobal); [id(DISPID_REGEXP_GLOBAL), propput] HRESULT Global([in] VARIANT_BOOL pGlobal); [id(DISPID_REGEXP_MULTILINE), propget] HRESULT Multiline([out, retval] VARIANT_BOOL *pMultiline); [id(DISPID_REGEXP_MULTILINE), propput] HRESULT Multiline([in] VARIANT_BOOL pMultiline); [id(DISPID_REGEXP_EXECUTE)] HRESULT Execute( [in] BSTR sourceString, [out, retval] IDispatch **ppMatches); [id(DISPID_REGEXP_TEST)] HRESULT Test( [in] BSTR sourceString, [out, retval] VARIANT_BOOL *pMatch); [id(DISPID_REGEXP_REPLACE)] HRESULT Replace( [in] BSTR sourceString, [in] VARIANT *replaceVar, [out, retval] BSTR *pDestString); } [ dual, hidden, nonextensible, odl, oleautomation, uuid(3f4daca1-160d-11d2-a8e9-00104b365c9f) ] interface IMatch : IDispatch { [id(DISPID_VALUE), propget] HRESULT Value([out, retval] BSTR *pValue); [id(DISPID_MATCH_FIRSTINDEX), propget] HRESULT FirstIndex([out, retval] LONG *pFirstIndex); [id(DISPID_MATCH_LENGTH), propget] HRESULT Length([out, retval] LONG *pLength); } [ odl, uuid(3f4dacb1-160d-11d2-a8e9-00104b365c9f), hidden, dual, nonextensible, oleautomation ] interface IMatch2 : IDispatch { [id(DISPID_VALUE), propget] HRESULT Value([out, retval] BSTR *pValue); [id(DISPID_MATCH_FIRSTINDEX), propget] HRESULT FirstIndex([out, retval] LONG *pFirstIndex); [id(DISPID_MATCH_LENGTH), propget] HRESULT Length([out, retval] LONG *pLength); [id(DISPID_MATCH_SUBMATCHES), propget] HRESULT SubMatches([out, retval] IDispatch **ppSubMatches); } [ dual, hidden, nonextensible, odl, oleautomation, uuid(3f4daca2-160d-11d2-a8e9-00104b365c9f) ] interface IMatchCollection : IDispatch { [id(DISPID_VALUE), propget] HRESULT Item( [in] LONG index, [out, retval] IDispatch **ppMatch); [id(DISPID_MATCHCOLLECTION_COUNT), propget] HRESULT Count([out, retval] LONG *pCount); [id(DISPID_NEWENUM), propget] HRESULT _NewEnum([out, retval] IUnknown **ppEnum); } [ dual, hidden, nonextensible, odl, oleautomation, uuid(3f4dacb2-160d-11d2-a8e9-00104b365c9f) ] interface IMatchCollection2 : IDispatch { [id(DISPID_VALUE), propget] HRESULT Item( [in] LONG index, [out, retval] IDispatch **ppMatch); [id(DISPID_MATCHCOLLECTION_COUNT), propget] HRESULT Count([out, retval] LONG *pCount); [id(DISPID_NEWENUM), propget] HRESULT _NewEnum([out, retval] IUnknown **ppEnum); } [ dual, hidden, nonextensible, odl, oleautomation, uuid(3f4dacb3-160d-11d2-a8e9-00104b365c9f) ] interface ISubMatches : IDispatch { [id(DISPID_VALUE), propget] HRESULT Item( [in] LONG index, [out, retval] VARIANT *pSubMatch); [id(DISPID_SUBMATCHES_COUNT), propget] HRESULT Count([out, retval] LONG *pCount); [id(DISPID_NEWENUM), propget] HRESULT _NewEnum([out, retval] IUnknown **ppEnum); } [ uuid(3f4daca4-160d-11d2-a8e9-00104b365c9f) ] coclass RegExp { [default] interface IRegExp2; } [ noncreatable, uuid(3f4daca5-160d-11d2-a8e9-00104b365c9f) ] coclass Match { [default] interface IMatch2; } [ noncreatable, uuid(3f4daca6-160d-11d2-a8e9-00104b365c9f) ] coclass MatchCollection { [default] interface IMatchCollection2; } [ noncreatable, uuid(3f4dacc0-160d-11d2-a8e9-00104b365c9f) ] coclass SubMatches { [default] interface ISubMatches; } }