EvEmu  0.8.4
11 September 2021
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Seperator.h
Go to the documentation of this file.
1 /*
2  ------------------------------------------------------------------------------------
3  LICENSE:
4  ------------------------------------------------------------------------------------
5  This file is part of EVEmu: EVE Online Server Emulator
6  Copyright 2006 - 2021 The EVEmu Team
7  For the latest information visit https://evemu.dev
8  ------------------------------------------------------------------------------------
9  This program is free software; you can redistribute it and/or modify it under
10  the terms of the GNU Lesser General Public License as published by the Free Software
11  Foundation; either version 2 of the License, or (at your option) any later
12  version.
13 
14  This program is distributed in the hope that it will be useful, but WITHOUT
15  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16  FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
17 
18  You should have received a copy of the GNU Lesser General Public License along with
19  this program; if not, write to the Free Software Foundation, Inc., 59 Temple
20  Place - Suite 330, Boston, MA 02111-1307, USA, or go to
21  http://www.gnu.org/copyleft/lesser.txt.
22  ------------------------------------------------------------------------------------
23  Author: Zhur, Bloody.Rabbit
24 */
25 
26 #ifndef __SEPERATOR_H__INCL__
27 #define __SEPERATOR_H__INCL__
28 
29 #include "utils/utils_string.h"
30 
36 class Seperator
37 {
38 public:
39  Seperator( const char* str,
40  const char* divs = " \t",
41  const char* quotes = "\"\'" );
42 
43  const std::string& arg( size_t index ) const { return mArgs[ index ]; }
44  size_t argCount() const { return mArgs.size(); }
45 
46  bool isNumber( size_t index ) const { return ::IsNumber( arg( index ) ); }
47  bool isHexNumber( size_t index ) const { return ::IsHexNumber( arg( index ) ); }
48 
49 protected:
50  std::vector<std::string> mArgs;
51 };
52 
53 #endif /* !__SEPERATOR_H__INCL__ */
const std::string & arg(size_t index) const
Definition: Seperator.h:43
Separates string to arguments.
Definition: Seperator.h:36
size_t argCount() const
Definition: Seperator.h:44
std::vector< std::string > mArgs
Definition: Seperator.h:50
bool IsHexNumber(char c)
Checks whether character is a hexadecimal number.
bool isHexNumber(size_t index) const
Definition: Seperator.h:47
Seperator(const char *str, const char *divs=" \t", const char *quotes="\"\'")
Definition: Seperator.cpp:34
bool IsNumber(char c)
Checks whether character is a number.
bool isNumber(size_t index) const
Definition: Seperator.h:46