aboutsummaryrefslogtreecommitdiffstats
path: root/tools/lldb-mi/MICmdArgValListOfN.h
diff options
context:
space:
mode:
Diffstat (limited to 'tools/lldb-mi/MICmdArgValListOfN.h')
-rw-r--r--tools/lldb-mi/MICmdArgValListOfN.h92
1 files changed, 0 insertions, 92 deletions
diff --git a/tools/lldb-mi/MICmdArgValListOfN.h b/tools/lldb-mi/MICmdArgValListOfN.h
deleted file mode 100644
index 74e8c16f7d6e..000000000000
--- a/tools/lldb-mi/MICmdArgValListOfN.h
+++ /dev/null
@@ -1,92 +0,0 @@
-//===-- MICmdArgValListOfN.h ------------------------------------*- C++ -*-===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#pragma once
-
-// Third party headers:
-#include <vector>
-
-// In-house headers:
-#include "MICmdArgValListBase.h"
-
-// Declarations:
-class CMICmdArgContext;
-
-//++
-//============================================================================
-// Details: MI common code class. Command argument class. Arguments object
-// needing specialization derived from the CMICmdArgValBase class.
-// An argument knows what type of argument it is and how it is to
-// interpret the options (context) string to find and validate a
-// matching
-// argument and so extract a value from it .
-// The CMICmdArgValBase objects added to *this ListOfN container belong
-// to this container and will be deleted when *this object goes out of
-// scope.
-// To parse arguments like 'thread-id ...' i.e. 1 10 12 13 ...
-// If vbMandatory argument is true it takes on the (...)+ specification
-// otherwise assumed to be (...)* specification.
-// Based on the Interpreter pattern.
-//--
-class CMICmdArgValListOfN : public CMICmdArgValListBase {
- // Methods:
-public:
- /* ctor */ CMICmdArgValListOfN();
- /* ctor */ CMICmdArgValListOfN(const CMIUtilString &vrArgName,
- const bool vbMandatory,
- const bool vbHandleByCmd,
- const ArgValType_e veType);
- //
- const VecArgObjPtr_t &GetExpectedOptions() const;
- template <class T1, typename T2>
- bool GetExpectedOption(T2 &vrwValue,
- const VecArgObjPtr_t::size_type vnAt = 0) const;
-
- // Overridden:
-public:
- // From CMICmdArgValBase
- /* dtor */ ~CMICmdArgValListOfN() override;
- // From CMICmdArgSet::IArg
- bool Validate(CMICmdArgContext &vArgContext) override;
-
- // Methods:
-private:
- bool IsListOfN(const CMIUtilString &vrTxt) const;
- bool CreateList(const CMIUtilString &vrTxt);
-};
-
-//++
-// Details: Retrieve the first argument or option value from the list of 1 or
-// more options
-// parsed from the command's options string.
-// Type: Template method.
-// Args: vrwValue - (W) Templated type return value.
-// vnAt - (R) Value at the specific position.
-// T1 - The argument value's class type of the data hold in
-// the list of options.
-// T2 - The type pf the variable which holds the value wanted.
-// Return: MIstatus::success - Functional succeeded.
-// MIstatus::failure - Functional failed. List of object was empty.
-// Throws: None.
-//--
-template <class T1, typename T2>
-bool CMICmdArgValListOfN::GetExpectedOption(
- T2 &vrwValue, const VecArgObjPtr_t::size_type vnAt) const {
- const VecArgObjPtr_t &rVecOptions(GetExpectedOptions());
- if (rVecOptions.size() <= vnAt)
- return MIstatus::failure;
-
- VecArgObjPtr_t::const_iterator it2 = rVecOptions.begin() + vnAt;
- if (it2 != rVecOptions.end()) {
- const T1 *pOption = static_cast<T1 *>(*it2);
- vrwValue = pOption->GetValue();
- return MIstatus::success;
- }
-
- return MIstatus::failure;
-}