42 lines
673 B
C++
42 lines
673 B
C++
#pragma once
|
|
#include <set>
|
|
#include <string>
|
|
#include "Export.h"
|
|
#include <initializer_list>
|
|
|
|
class UNSWSC_DLL_EXPORT IPList
|
|
{
|
|
private:
|
|
std::set<std::string> list;
|
|
|
|
private:
|
|
bool CheckIPv4(std::string ip);
|
|
|
|
public:
|
|
IPList();
|
|
IPList(std::initializer_list<std::string> list);
|
|
IPList(const IPList& obj);
|
|
|
|
public:
|
|
bool Push(std::string ip);
|
|
bool Pop(std::string ip);
|
|
bool Exist(std::string ip);
|
|
bool Exist(std::string ip) const;
|
|
bool Empty();
|
|
size_t Size();
|
|
|
|
public:
|
|
auto begin();
|
|
auto end();
|
|
auto rbegin();
|
|
auto rend();
|
|
auto begin() const;
|
|
auto end() const;
|
|
auto rbegin() const;
|
|
auto rend() const;
|
|
|
|
public:
|
|
bool operator<(const IPList& obj) const;
|
|
};
|
|
|