Horizon
horizon-eda-1.3.0
src
rules
rule_match.hpp
1
#pragma once
2
#include "nlohmann/json_fwd.hpp"
3
#include "util/uuid.hpp"
4
5
namespace
horizon {
6
using
json
=
nlohmann::json
;
7
8
class
RuleMatch
{
9
public
:
10
RuleMatch
();
11
RuleMatch
(
const
json
&j);
12
json
serialize()
const
;
13
std::string get_brief(
const
class
Block
*block =
nullptr
)
const
;
14
void
cleanup(
const
class
Block
*block);
15
16
enum class
Mode { ALL, NET, NET_CLASS, NET_NAME_REGEX };
17
Mode mode = Mode::ALL;
18
19
UUID
net;
20
UUID
net_class;
21
std::string net_name_regex;
22
23
bool
match(
const
class
Net
*net)
const
;
24
};
25
}
// namespace horizon
horizon::RuleMatch
Definition:
rule_match.hpp:8
horizon::Net
Definition:
net.hpp:15
horizon::Block
A block is one level of hierarchy in the netlist.
Definition:
block.hpp:25
nlohmann::basic_json
a class to store JSON values
Definition:
json.hpp:166
horizon::UUID
This class encapsulates a UUID and allows it to be uses as a value type.
Definition:
uuid.hpp:16
nlohmann::json
basic_json<> json
default JSON class
Definition:
json_fwd.hpp:61
Generated by
1.8.20