13#ifndef __REGULAR_EXPRESSION_PROTOCOL_H__
14#define __REGULAR_EXPRESSION_PROTOCOL_H__
16#define EFI_REGULAR_EXPRESSION_PROTOCOL_GUID \
18 0xB3F79D9A, 0x436C, 0xDC11, {0xB0, 0x52, 0xCD, 0x85, 0xDF, 0x52, 0x4C, 0xE6 } \
21#define EFI_REGEX_SYNTAX_TYPE_POSIX_EXTENDED_GUID \
23 0x5F05B20F, 0x4A56, 0xC231, {0xFA, 0x0B, 0xA7, 0xB1, 0xF1, 0x10, 0x04, 0x1D } \
26#define EFI_REGEX_SYNTAX_TYPE_PERL_GUID \
28 0x63E60A51, 0x497D, 0xD427, {0xC4, 0xA5, 0xB8, 0xAB, 0xDC, 0x3A, 0xAE, 0xB6 } \
31#define EFI_REGEX_SYNTAX_TYPE_ECMA_262_GUID \
33 0x9A473A4A, 0x4CEB, 0xB95A, {0x41, 0x5E, 0x5B, 0xA0, 0xBC, 0x63, 0x9B, 0x2E } \
39 CONST CHAR16 *CapturePtr;
157extern EFI_GUID gEfiRegularExpressionProtocolGuid;
163extern EFI_GUID gEfiRegexSyntaxTypePosixExtendedGuid;
168extern EFI_GUID gEfiRegexSyntaxTypeEcma262Guid;
173extern EFI_GUID gEfiRegexSyntaxTypePerlGuid;
EFI_STATUS(EFIAPI * EFI_REGULAR_EXPRESSION_MATCH)(IN EFI_REGULAR_EXPRESSION_PROTOCOL *This, IN CHAR16 *String, IN CHAR16 *Pattern, IN EFI_REGEX_SYNTAX_TYPE *SyntaxType OPTIONAL, OUT BOOLEAN *Result, OUT EFI_REGEX_CAPTURE **Captures OPTIONAL, OUT UINTN *CapturesCount)
EFI_STATUS(EFIAPI * EFI_REGULAR_EXPRESSION_GET_INFO)(IN EFI_REGULAR_EXPRESSION_PROTOCOL *This, IN OUT UINTN *RegExSyntaxTypeListSize, OUT EFI_REGEX_SYNTAX_TYPE *RegExSyntaxTypeList)