Files
rk35xx-android14/frameworks/compile/mclinker/include/mcld/Script/OutputFormatCmd.h
T
hmz007 36ed224bac Rockchip Anroid14_SDK 20240628-rkr5 (2556df1a)
Signed-off-by: hmz007 <hmz007@gmail.com>
Change-Id: Ib87fdbe7a0be7dc961af3500fe9ea4589a127f9f
2024-10-29 18:12:02 +08:00

58 lines
1.5 KiB
C++

//===- OutputFormatCmd.h --------------------------------------------------===//
//
// The MCLinker Project
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
#ifndef MCLD_SCRIPT_OUTPUTFORMATCMD_H_
#define MCLD_SCRIPT_OUTPUTFORMATCMD_H_
#include "mcld/Script/ScriptCommand.h"
#include <string>
#include <vector>
namespace mcld {
class Module;
/** \class OutputFormatCmd
* \brief This class defines the interfaces to OutputFormat command.
*/
class OutputFormatCmd : public ScriptCommand {
public:
typedef std::vector<std::string> FormatList;
typedef FormatList::const_iterator const_iterator;
typedef FormatList::iterator iterator;
public:
explicit OutputFormatCmd(const std::string& pFormat);
OutputFormatCmd(const std::string& pDefault,
const std::string& pBig,
const std::string& pLittle);
~OutputFormatCmd();
const_iterator begin() const { return m_FormatList.begin(); }
iterator begin() { return m_FormatList.begin(); }
const_iterator end() const { return m_FormatList.end(); }
iterator end() { return m_FormatList.end(); }
void dump() const;
static bool classof(const ScriptCommand* pCmd) {
return pCmd->getKind() == ScriptCommand::OUTPUT_FORMAT;
}
void activate(Module& pModule);
private:
FormatList m_FormatList;
};
} // namespace mcld
#endif // MCLD_SCRIPT_OUTPUTFORMATCMD_H_