| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 | /* * CModVersion.h, part of VCMI engine * * Authors: listed in file AUTHORS in main folder * * License: GNU General Public License v2.0 or later * Full text of license available in license.txt file, in main folder * */#pragma once#if defined(__UCLIBC__) || defined(__FreeBSD__) || defined(__OpenBSD__)#undef major#undef minor#undef patch#endifVCMI_LIB_NAMESPACE_BEGINusing TModID = std::string;struct DLL_LINKAGE CModVersion{	static const int Any = -1;		int major = Any;	int minor = Any;	int patch = Any;	CModVersion() = default;	CModVersion(int mj, int mi, int p): major(mj), minor(mi), patch(p) {}	static CModVersion GameVersion();	static CModVersion fromString(std::string from);	std::string toString() const;	bool operator !=(const CModVersion & other) const;	bool operator ==(const CModVersion & other) const;	bool compatible(const CModVersion & other, bool checkMinor = false, bool checkPatch = false) const;	bool isNull() const;	template <typename Handler> void serialize(Handler &h)	{		h & major;		h & minor;		h & patch;	}};DLL_LINKAGE bool operator < (const CModVersion & lesser, const CModVersion & greater);VCMI_LIB_NAMESPACE_END
 |