summaryrefslogtreecommitdiff
path: root/ShellPkg/Include/Library/ShellCommandLib.h
diff options
context:
space:
mode:
Diffstat (limited to 'ShellPkg/Include/Library/ShellCommandLib.h')
-rw-r--r--ShellPkg/Include/Library/ShellCommandLib.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/ShellPkg/Include/Library/ShellCommandLib.h b/ShellPkg/Include/Library/ShellCommandLib.h
index 3ee820001e..5c5e241f15 100644
--- a/ShellPkg/Include/Library/ShellCommandLib.h
+++ b/ShellPkg/Include/Library/ShellCommandLib.h
@@ -719,4 +719,49 @@ CatSDumpHex (
IN UINTN DataSize,
IN VOID *UserData
);
+
+/**
+ Return the pointer to the first occurrence of any character from a list of characters.
+
+ @param[in] String The string to parse
+ @param[in] CharacterList The list of character to look for
+ @param[in] IgnoreEscapedCharacter TRUE to ignore escaped characters
+
+ @return The location of the first character in the String.
+ @return Pointer to the ending NULL character of the String.
+**/
+CONST CHAR16*
+EFIAPI
+ShellFindFirstCharacter (
+ IN CONST CHAR16 *String,
+ IN CONST CHAR16 *CharacterList,
+ IN CONST BOOLEAN IgnoreEscapedCharacter
+ );
+
+/**
+ return the next parameter from a command line string;
+
+ This function moves the next parameter from Walker into NextParameter and moves
+ Walker up past that parameter for recursive calling. When the final parameter
+ is moved *Walker will be set to NULL;
+
+ @param[in, out] Walker pointer to string of command line. Adjusted to
+ reminaing command line on return
+ @param[in, out] NextParameter string of command line item extracted.
+ @param[in] Length Length of TempParameter in bytes
+ @param[in] StripQuotation if TRUE then strip the quotation marks surrounding
+ the parameters.
+
+ @return EFI_INALID_PARAMETER A required parameter was NULL or pointed to a NULL or empty string.
+ @return EFI_NOT_FOUND A closing " could not be found on the specified string
+**/
+EFI_STATUS
+EFIAPI
+ShellGetNextParameter(
+ IN OUT CHAR16 **Walker,
+ IN OUT CHAR16 *NextParameter,
+ IN CONST UINTN Length,
+ IN BOOLEAN StripQuotation
+ );
+
#endif //_SHELL_COMMAND_LIB_