|
GCC Middle and Back End API Reference
|
#include <digraphs.h>

Public Member Functions | |
| const char * | get_property (const json::string_property &property) const |
| void | set_property (const json::string_property &property, const char *utf8_value) |
| bool | maybe_get_property (const json::integer_property &property, long &out) const |
| void | set_property (const json::integer_property &property, long value) |
| tristate | get_property_as_tristate (const json::bool_property &property) const |
| void | set_property (const json::bool_property &property, bool value) |
| json::array * | get_property (const json::array_of_string_property &property) const |
| template<typename EnumType> | |
| EnumType | get_property (const json::enum_property< EnumType > &property) const |
| template<typename EnumType> | |
| void | set_property (const json::enum_property< EnumType > &property, EnumType value) |
| const json::value * | get_property (const json::json_property &property) const |
| void | set_property (const json::json_property &property, std::unique_ptr< json::value > value) |
| json::object * | get_property_bag () const |
| json::object & | ensure_property_bag () |
| void | set_property_bag (std::unique_ptr< json::object > property_bag) |
Private Attributes | |
| std::unique_ptr< json::object > | m_property_bag |
A base class for digraph, node, and edge to allow them to have an optional JSON property bag.
| json::object & digraph_object::ensure_property_bag | ( | ) |
References m_property_bag.
Referenced by set_property(), set_property(), set_property(), set_property(), and set_property().
| json::array * digraph_object::get_property | ( | const json::array_of_string_property & | property | ) | const |
Array-of-string properties.
References json::array::dyn_cast_array(), and m_property_bag.
|
inline |
References json::enum_traits< EnumType >::get_unknown_value(), and m_property_bag.
| const json::value * digraph_object::get_property | ( | const json::json_property & | property | ) | const |
json::value properties.
References m_property_bag.
| const char * digraph_object::get_property | ( | const json::string_property & | property | ) | const |
String properties.
References json::string::dyn_cast_string(), and m_property_bag.
Referenced by diagnostics::digraphs::digraph::get_graph_kind(), state_diagram::get_label_for_node(), state_diagram::on_node_in_table(), and state_diagram::starts_node_p().
| tristate digraph_object::get_property_as_tristate | ( | const json::bool_property & | property | ) | const |
References json::JSON_FALSE, json::JSON_TRUE, m_property_bag, and tristate::unknown().
|
inline |
References m_property_bag.
Referenced by diagnostics::digraphs::digraph::clone(), diagnostics::digraphs::node::clone(), and diagnostics::copy_any_property_bag().
| bool digraph_object::maybe_get_property | ( | const json::integer_property & | property, |
| long & | out_value ) const |
Integer properties.
References json::integer_number::dyn_cast_integer_number(), and m_property_bag.
| void digraph_object::set_property | ( | const json::bool_property & | property, |
| bool | value ) |
Bool properties.
References ensure_property_bag().
|
inline |
References ensure_property_bag().
| void digraph_object::set_property | ( | const json::integer_property & | property, |
| long | value ) |
References ensure_property_bag().
| void digraph_object::set_property | ( | const json::json_property & | property, |
| std::unique_ptr< json::value > | value ) |
References ensure_property_bag().
| void digraph_object::set_property | ( | const json::string_property & | property, |
| const char * | utf8_value ) |
References ensure_property_bag().
Referenced by diagnostics::digraphs::digraph::set_graph_kind().
|
inline |
References m_property_bag.
|
private |