LibrePCB Developers Documentation
Loading...
Searching...
No Matches
elementname.h File Reference
#include "../exceptions.h"
#include "../serialization/sexpression.h"
#include "../utils/toolbox.h"
#include <type_safe/constrained_type.hpp>
#include <QtCore>
#include <optional>
+ Include dependency graph for elementname.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ElementNameVerifier
 
struct  ElementNameConstraint
 

Namespaces

namespace  librepcb
 

Typedefs

using ElementName = type_safe::constrained_type< QString, ElementNameConstraint, ElementNameVerifier >
 

Functions

bool operator== (const ElementName &lhs, const QString &rhs) noexcept
 
bool operator== (const QString &lhs, const ElementName &rhs) noexcept
 
bool operator!= (const ElementName &lhs, const QString &rhs) noexcept
 
bool operator!= (const QString &lhs, const ElementName &rhs) noexcept
 
QString operator% (const ElementName &lhs, const QString &rhs) noexcept
 
QString operator% (const QString &lhs, const ElementName &rhs) noexcept
 
ElementName operator% (const ElementName &lhs, const ElementName &rhs) noexcept
 
template<>
std::unique_ptr< SExpressionserialize (const ElementName &obj)
 
template<>
ElementName deserialize (const SExpression &node)
 
template<>
std::unique_ptr< SExpressionserialize (const std::optional< ElementName > &obj)
 
template<>
std::optional< ElementNamedeserialize (const SExpression &node)
 
QDataStream & operator<< (QDataStream &stream, const ElementName &obj)
 
QDebug operator<< (QDebug stream, const ElementName &obj)
 
std::size_t qHash (const ElementName &key, std::size_t seed=0) noexcept
 
static QString cleanElementName (const QString &userInput) noexcept
 
static ElementName elementNameFromTr (const char *context, const char *textNoTr) noexcept