GCC Middle and Back End API Reference
|
Public Member Functions | |
diagnostic_node (diagnostic_graph &g, std::string id) | |
std::string | get_id () const |
const char * | get_label () const |
void | set_label (const char *label) |
void | set_label (std::string label) |
size_t | get_num_children () const |
node & | get_child (size_t idx) const |
void | add_child (std::unique_ptr< node > child) |
location_t | get_physical_loc () const |
void | set_physical_loc (location_t physical_loc) |
logical_locations::key | get_logical_loc () const |
void | set_logical_loc (logical_locations::key logical_loc) |
void | print (graphviz_out &gv) const |
void | dump () const |
std::unique_ptr< json::object > | to_json_sarif_node () const |
std::unique_ptr< node > | clone (digraph &new_graph, std::map< node *, node * > &node_mapping) const |
const char * | get_property (const json::string_property &property) const |
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 |
const json::value * | get_property (const json::json_property &property) const |
void | set_property (const json::string_property &property, const char *utf8_value) |
void | set_property (const json::integer_property &property, long value) |
void | set_property (const json::bool_property &property, bool value) |
template<typename EnumType> | |
void | set_property (const json::enum_property< EnumType > &property, EnumType value) |
void | set_property (const json::json_property &property, std::unique_ptr< json::value > value) |
bool | maybe_get_property (const json::integer_property &property, long &out) const |
tristate | get_property_as_tristate (const json::bool_property &property) const |
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::string | m_id |
std::unique_ptr< std::string > | m_label |
std::vector< std::unique_ptr< node > > | m_children |
location_t | m_physical_loc |
logical_locations::key | m_logical_loc |
std::unique_ptr< json::object > | m_property_bag |
|
inline |
References g.
|
inlineinherited |
References gcc_assert, and m_children.
Referenced by diagnostic_graph::add_node_with_id().
|
inherited |
References get_id(), diagnostics::digraphs::object::get_property_bag(), m_children, m_logical_loc, and new_graph().
|
inherited |
References to_json_sarif_node().
|
inherited |
References m_property_bag.
Referenced by set_property(), set_property(), set_property(), set_property(), and set_property().
|
inlineinherited |
References m_children.
Referenced by state_diagram::on_input_state_node(), and state_diagram::on_node_in_table().
|
inlineinherited |
References m_id.
Referenced by clone(), and state_diagram::make_id().
|
inlineinherited |
References m_label.
|
inlineinherited |
References m_logical_loc.
Referenced by state_diagram::on_node_in_table().
|
inlineinherited |
References m_children.
Referenced by state_diagram::on_input_state_node(), and state_diagram::on_node_in_table().
|
inlineinherited |
References m_physical_loc.
|
inherited |
Array-of-string properties.
References json::array::dyn_cast_array(), and m_property_bag.
|
inlineinherited |
References json::enum_traits< EnumType >::get_unknown_value(), and m_property_bag.
|
inherited |
json::value properties.
References m_property_bag.
|
inherited |
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().
|
inherited |
References json::JSON_FALSE, json::JSON_TRUE, m_property_bag, and tristate::unknown().
|
inlineinherited |
References m_property_bag.
Referenced by diagnostics::digraphs::digraph::clone(), diagnostics::digraphs::node::clone(), and diagnostics::copy_any_property_bag().
|
inherited |
Integer properties.
References json::integer_number::dyn_cast_integer_number(), and m_property_bag.
|
inherited |
References new_graph().
|
inlineinherited |
References m_label.
|
inlineinherited |
References m_label.
|
inlineinherited |
References m_logical_loc.
|
inlineinherited |
References m_physical_loc.
|
inherited |
Bool properties.
References ensure_property_bag().
|
inlineinherited |
References ensure_property_bag().
|
inherited |
References ensure_property_bag().
|
inherited |
References ensure_property_bag().
|
inherited |
References ensure_property_bag().
Referenced by diagnostics::digraphs::digraph::set_graph_kind().
|
inlineinherited |
References m_property_bag.
|
inherited |
References diagnostics::make_sarif_node().
Referenced by dump().
|
privateinherited |
Referenced by add_child(), clone(), get_child(), and get_num_children().
|
privateinherited |
Referenced by get_label(), set_label(), and set_label().
|
privateinherited |
Referenced by clone(), get_logical_loc(), and set_logical_loc().
|
privateinherited |
Referenced by get_physical_loc(), node(), and set_physical_loc().
|
privateinherited |