111 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			111 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			C++
		
	
	
	
| //===-- MIUtilMapIdToVariant.cpp --------------------------------*- C++ -*-===//
 | |
| //
 | |
| //                     The LLVM Compiler Infrastructure
 | |
| //
 | |
| // This file is distributed under the University of Illinois Open Source
 | |
| // License. See LICENSE.TXT for details.
 | |
| //
 | |
| //===----------------------------------------------------------------------===//
 | |
| 
 | |
| // In-house headers:
 | |
| #include "MIUtilMapIdToVariant.h"
 | |
| 
 | |
| //++
 | |
| //------------------------------------------------------------------------------------
 | |
| // Details: CMIUtilMapIdToVariant constructor.
 | |
| // Type:    Method.
 | |
| // Args:    None.
 | |
| // Return:  None.
 | |
| // Throws:  None.
 | |
| //--
 | |
| CMIUtilMapIdToVariant::CMIUtilMapIdToVariant() {}
 | |
| 
 | |
| //++
 | |
| //------------------------------------------------------------------------------------
 | |
| // Details: CMIUtilMapIdToVariant destructor.
 | |
| // Type:    Method.
 | |
| // Args:    None.
 | |
| // Return:  None.
 | |
| // Throws:  None.
 | |
| //--
 | |
| CMIUtilMapIdToVariant::~CMIUtilMapIdToVariant() {}
 | |
| 
 | |
| //++
 | |
| //------------------------------------------------------------------------------------
 | |
| // Details: Remove at the data from *this container.
 | |
| // Type:    Method.
 | |
| // Args:    None.
 | |
| // Return:  None.
 | |
| // Throws:  None.
 | |
| //--
 | |
| void CMIUtilMapIdToVariant::Clear() { m_mapKeyToVariantValue.clear(); }
 | |
| 
 | |
| //++
 | |
| //------------------------------------------------------------------------------------
 | |
| // Details: Check an ID is present already in *this container.
 | |
| // Type:    Method.
 | |
| // Args:    vId - (R) Unique ID i.e. GUID.
 | |
| // Return:  True - registered.
 | |
| //          False - not found.
 | |
| // Throws:  None.
 | |
| //--
 | |
| bool CMIUtilMapIdToVariant::HaveAlready(const CMIUtilString &vId) const {
 | |
|   const MapKeyToVariantValue_t::const_iterator it =
 | |
|       m_mapKeyToVariantValue.find(vId);
 | |
|   if (it != m_mapKeyToVariantValue.end())
 | |
|     return true;
 | |
| 
 | |
|   return false;
 | |
| }
 | |
| 
 | |
| //++
 | |
| //------------------------------------------------------------------------------------
 | |
| // Details: Determine if *this container is currently holding any data.
 | |
| // Type:    Method.
 | |
| // Args:    None.
 | |
| // Return:  bool    - True - Yes empty, false - one or more data object present.
 | |
| // Throws:  None.
 | |
| //--
 | |
| bool CMIUtilMapIdToVariant::IsEmpty() const {
 | |
|   return m_mapKeyToVariantValue.empty();
 | |
| }
 | |
| 
 | |
| //++
 | |
| //------------------------------------------------------------------------------------
 | |
| // Details: Check the ID is valid to be registered.
 | |
| // Type:    Method.
 | |
| // Args:    vId - (R) Unique ID i.e. GUID.
 | |
| // Return:  True - valid.
 | |
| //          False - not valid.
 | |
| // Throws:  None.
 | |
| //--
 | |
| bool CMIUtilMapIdToVariant::IsValid(const CMIUtilString &vId) const {
 | |
|   bool bValid = true;
 | |
| 
 | |
|   if (vId.empty())
 | |
|     bValid = false;
 | |
| 
 | |
|   return bValid;
 | |
| }
 | |
| 
 | |
| //++
 | |
| //------------------------------------------------------------------------------------
 | |
| // Details: Remove from *this contain a data object specified by ID. The data
 | |
| // object
 | |
| //          when removed also calls its destructor should it have one.
 | |
| // Type:    Method.
 | |
| // Args:    vId - (R) Unique ID i.e. GUID.
 | |
| // Return:  MIstatus::success - Functional succeeded.
 | |
| //          MIstatus::failure - Functional failed.
 | |
| // Throws:  None.
 | |
| //--
 | |
| bool CMIUtilMapIdToVariant::Remove(const CMIUtilString &vId) {
 | |
|   const MapKeyToVariantValue_t::const_iterator it =
 | |
|       m_mapKeyToVariantValue.find(vId);
 | |
|   if (it != m_mapKeyToVariantValue.end()) {
 | |
|     m_mapKeyToVariantValue.erase(it);
 | |
|   }
 | |
| 
 | |
|   return MIstatus::success;
 | |
| }
 |