isospec 0.1.0+2.6.0

Fine-structure isotopic distributions of molecules: the IsoSpec C++ library, built from source, behind a safe Rust API
Documentation
/*
 *   Copyright (C) 2015-2020 Mateusz Łącki and Michał Startek.
 *
 *   This file is part of IsoSpec.
 *
 *   IsoSpec is free software: you can redistribute it and/or modify
 *   it under the terms of the Simplified ("2-clause") BSD licence.
 *
 *   IsoSpec is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 *
 *   You should have received a copy of the Simplified BSD Licence
 *   along with IsoSpec.  If not, see <https://opensource.org/licenses/BSD-2-Clause>.
 */

#pragma once

namespace IsoSpec
{

typedef int* Conf;

struct ProbAndConfPtr
{
    // For some reason std::pair isn't trivially copyable...
    double first;
    Conf second;

    ProbAndConfPtr(double p, Conf c) : first(p), second(c) {}

    bool operator<(const ProbAndConfPtr& other) const
    {
        return first < other.first;
    }
};

}  // namespace IsoSpec