mirror of
https://github.com/tfussell/xlnt.git
synced 2024-03-22 13:11:17 +08:00
specialize std::hash for border::side and get rid of border::default
This commit is contained in:
parent
4234a62b8b
commit
69bd89da63
|
@ -36,13 +36,7 @@
|
||||||
|
|
||||||
namespace xlnt {
|
namespace xlnt {
|
||||||
|
|
||||||
/// <summary>
|
enum class XLNT_CLASS border_side
|
||||||
/// Describes the border style of a particular cell.
|
|
||||||
/// </summary>
|
|
||||||
class XLNT_CLASS border : public hashable
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
enum class XLNT_CLASS side
|
|
||||||
{
|
{
|
||||||
start,
|
start,
|
||||||
end,
|
end,
|
||||||
|
@ -53,6 +47,31 @@ public:
|
||||||
horizontal
|
horizontal
|
||||||
};
|
};
|
||||||
|
|
||||||
|
} // namespace xlnt
|
||||||
|
|
||||||
|
namespace std {
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct hash<xlnt::border_side>
|
||||||
|
{
|
||||||
|
size_t operator()(const xlnt::border_side &k) const
|
||||||
|
{
|
||||||
|
return static_cast<std::size_t>(k);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namepsace std
|
||||||
|
|
||||||
|
namespace xlnt {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Describes the border style of a particular cell.
|
||||||
|
/// </summary>
|
||||||
|
class XLNT_CLASS border : public hashable
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
using side = border_side;
|
||||||
|
|
||||||
class XLNT_CLASS border_property
|
class XLNT_CLASS border_property
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
@ -72,14 +91,11 @@ public:
|
||||||
border_style style_;
|
border_style style_;
|
||||||
};
|
};
|
||||||
|
|
||||||
static border default();
|
|
||||||
|
|
||||||
static const std::unordered_map<side, std::string> &get_side_names();
|
static const std::unordered_map<side, std::string> &get_side_names();
|
||||||
|
|
||||||
border();
|
border();
|
||||||
|
|
||||||
bool has_side(side s) const;
|
bool has_side(side s) const;
|
||||||
border_property &get_side(side s);
|
|
||||||
const border_property &get_side(side s) const;
|
const border_property &get_side(side s) const;
|
||||||
void set_side(side s, const border_property &prop);
|
void set_side(side s, const border_property &prop);
|
||||||
|
|
||||||
|
|
|
@ -69,11 +69,6 @@ void border::border_property::set_style(border_style s)
|
||||||
style_ = s;
|
style_ = s;
|
||||||
}
|
}
|
||||||
|
|
||||||
border border::default()
|
|
||||||
{
|
|
||||||
return border();
|
|
||||||
}
|
|
||||||
|
|
||||||
border::border()
|
border::border()
|
||||||
{
|
{
|
||||||
sides_ =
|
sides_ =
|
||||||
|
|
Loading…
Reference in New Issue
Block a user