kim-api  2.3.0+v2.3.0.GNU.GNU.
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
KIM_SemVer.hpp
Go to the documentation of this file.
1 //
2 // KIM-API: An API for interatomic models
3 // Copyright (c) 2013--2022, Regents of the University of Minnesota.
4 // All rights reserved.
5 //
6 // Contributors:
7 // Ryan S. Elliott
8 //
9 // SPDX-License-Identifier: LGPL-2.1-or-later
10 //
11 // This library is free software; you can redistribute it and/or
12 // modify it under the terms of the GNU Lesser General Public
13 // License as published by the Free Software Foundation; either
14 // version 2.1 of the License, or (at your option) any later version.
15 //
16 // This library is distributed in the hope that it will be useful,
17 // but WITHOUT ANY WARRANTY; without even the implied warranty of
18 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 // Lesser General Public License for more details.
20 //
21 // You should have received a copy of the GNU Lesser General Public License
22 // along with this library; if not, write to the Free Software Foundation,
23 // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
24 //
25 
26 //
27 // Release: This file is part of the kim-api-2.3.0 package.
28 //
29 
30 
31 #ifndef KIM_SEM_VER_HPP_
32 #define KIM_SEM_VER_HPP_
33 
34 #include <string>
35 
36 namespace KIM
37 {
39 namespace SEM_VER
40 {
46 std::string const & GetSemVer();
47 
65 int IsLessThan(std::string const & lhs,
66  std::string const & rhs,
67  int * const isLessThan);
68 
100 int ParseSemVer(std::string const & version,
101  int * const major,
102  int * const minor,
103  int * const patch,
104  std::string * const prerelease,
105  std::string * const buildMetadata);
106 } // namespace SEM_VER
107 } // namespace KIM
108 
109 #endif // KIM_SEM_VER_HPP_
int ParseSemVer(std::string const &version, int *const major, int *const minor, int *const patch, std::string *const prerelease, std::string *const buildMetadata)
Parse Semantic Version string into its six components.
std::string const & GetSemVer()
Get the KIM API complete Semantic Version string.
int IsLessThan(std::string const &lhs, std::string const &rhs, int *const isLessThan)
Compare two Semantic Version strings.