]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ShellPkg/Include/Library/ShellCommandLib.h
ShellPkg: Move FindFirstCharacter/GetNextParameter to ShellCommandLib
[mirror_edk2.git] / ShellPkg / Include / Library / ShellCommandLib.h
index 3ee820001e9e92d19da441b5424f5b5742efaee0..5c5e241f1525e03b0a8713cd0dc5a9a83508b15c 100644 (file)
@@ -719,4 +719,49 @@ CatSDumpHex (
   IN UINTN   DataSize,\r
   IN VOID    *UserData\r
   );\r
+\r
+/**\r
+  Return the pointer to the first occurrence of any character from a list of characters.\r
+\r
+  @param[in] String                 The string to parse\r
+  @param[in] CharacterList          The list of character to look for\r
+  @param[in] IgnoreEscapedCharacter TRUE to ignore escaped characters\r
+\r
+  @return The location of the first character in the String.\r
+  @return Pointer to the ending NULL character of the String.\r
+**/\r
+CONST CHAR16*\r
+EFIAPI\r
+ShellFindFirstCharacter (\r
+  IN CONST CHAR16  *String,\r
+  IN CONST CHAR16  *CharacterList,\r
+  IN CONST BOOLEAN IgnoreEscapedCharacter\r
+  );\r
+\r
+/**\r
+  return the next parameter from a command line string;\r
+\r
+  This function moves the next parameter from Walker into NextParameter and moves\r
+  Walker up past that parameter for recursive calling.  When the final parameter\r
+  is moved *Walker will be set to NULL;\r
+\r
+  @param[in, out] Walker          pointer to string of command line.  Adjusted to\r
+                                  reminaing command line on return\r
+  @param[in, out] NextParameter   string of command line item extracted.\r
+  @param[in]      Length          Length of TempParameter in bytes\r
+  @param[in]      StripQuotation  if TRUE then strip the quotation marks surrounding\r
+                                  the parameters.\r
+\r
+  @return   EFI_INALID_PARAMETER  A required parameter was NULL or pointed to a NULL or empty string.\r
+  @return   EFI_NOT_FOUND         A closing " could not be found on the specified string\r
+**/\r
+EFI_STATUS\r
+EFIAPI\r
+ShellGetNextParameter(\r
+  IN OUT CHAR16   **Walker,\r
+  IN OUT CHAR16   *NextParameter,\r
+  IN CONST UINTN  Length,\r
+  IN BOOLEAN      StripQuotation\r
+  );\r
+\r
 #endif //_SHELL_COMMAND_LIB_\r