2 * Copyright 2013 Piotr Caban for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #pragma makedep regtypelib
23 #include "vbscript_defs.h"
26 helpstring("Microsoft VBScript Regular Expressions 1.0"),
27 uuid(3f4daca7-160d-11d2-a8e9-00104b365c9f),
30 library VBScript_RegExp_10
32 importlib("stdole2.tlb");
40 uuid(3f4daca0-160d-11d2-a8e9-00104b365c9f),
42 interface IRegExp : IDispatch
44 [id(DISPID_REGEXP_PATTERN), propget]
45 HRESULT Pattern([out, retval] BSTR *pPattern);
47 [id(DISPID_REGEXP_PATTERN), propput]
48 HRESULT Pattern([in] BSTR pPattern);
50 [id(DISPID_REGEXP_IGNORECASE), propget]
51 HRESULT IgnoreCase([out, retval] VARIANT_BOOL *pIgnoreCase);
53 [id(DISPID_REGEXP_IGNORECASE), propput]
54 HRESULT IgnoreCase([in] VARIANT_BOOL pIgnoreCase);
56 [id(DISPID_REGEXP_GLOBAL), propget]
57 HRESULT Global([out, retval] VARIANT_BOOL *pGlobal);
59 [id(DISPID_REGEXP_GLOBAL), propput]
60 HRESULT Global([in] VARIANT_BOOL pGlobal);
62 [id(DISPID_REGEXP_EXECUTE)]
64 [in] BSTR sourceString,
65 [out, retval] IDispatch **ppMatches);
67 [id(DISPID_REGEXP_TEST)]
69 [in] BSTR sourceString,
70 [out, retval] VARIANT_BOOL *pMatch);
72 [id(DISPID_REGEXP_REPLACE)]
74 [in] BSTR sourceString,
75 [in] BSTR replaceString,
76 [out, retval] BSTR *pDestString);
85 uuid(3f4daca1-160d-11d2-a8e9-00104b365c9f)
87 interface IMatch : IDispatch
89 [id(DISPID_VALUE), propget]
90 HRESULT Value([out, retval] BSTR *pValue);
92 [id(DISPID_MATCH_FIRSTINDEX), propget]
93 HRESULT FirstIndex([out, retval] LONG *pFirstIndex);
95 [id(DISPID_MATCH_LENGTH), propget]
96 HRESULT Length([out, retval] LONG *pLength);
105 uuid(3f4daca2-160d-11d2-a8e9-00104b365c9f)
107 interface IMatchCollection : IDispatch
109 [id(DISPID_VALUE), propget]
112 [out, retval] IDispatch **ppMatch);
114 [id(DISPID_MATCHCOLLECTION_COUNT), propget]
115 HRESULT Count([out, retval] LONG *pCount);
117 [id(DISPID_NEWENUM), propget]
118 HRESULT _NewEnum([out, retval] IUnknown **ppEnum);
122 uuid(3f4daca4-160d-11d2-a8e9-00104b365c9f)
126 [default] interface IRegExp;
131 uuid(3f4daca5-160d-11d2-a8e9-00104b365c9f)
135 [default] interface IMatch;
140 uuid(3f4daca6-160d-11d2-a8e9-00104b365c9f)
142 coclass MatchCollection
144 [default] interface IMatchCollection;