GCC Middle and Back End API Reference
diagnostics::digraphs::edge Class Reference

#include <digraphs.h>

Inheritance diagram for diagnostics::digraphs::edge:
Collaboration diagram for diagnostics::digraphs::edge:

Public Member Functions

virtual ~edge ()
 edge (digraph &g, const char *id, node &src_node, node &dst_node)
std::string get_id () const
const char * get_label () const
void set_label (const char *label)
nodeget_src_node () const
nodeget_dst_node () const
void dump () const
std::unique_ptr< json::objectto_json_sarif_edge () const
std::unique_ptr< edgeclone (digraph &new_graph, const std::map< diagnostics::digraphs::node *, diagnostics::digraphs::node * > &node_mapping) const
const char * get_attr (const char *key_prefix, const char *key) const
void set_attr (const char *key_prefix, const char *key, const char *value)
void set_json_attr (const char *key_prefix, const char *key, std::unique_ptr< json::value > value)
json::objectget_property_bag () const
void set_property_bag (std::unique_ptr< json::object > property_bag)

Private Attributes

std::string m_id
std::unique_ptr< std::string > m_label
nodem_src_node
nodem_dst_node
std::unique_ptr< json::objectm_property_bag

Constructor & Destructor Documentation

◆ ~edge()

virtual diagnostics::digraphs::edge::~edge ( )
inlinevirtual

◆ edge()

diagnostics::digraphs::edge::edge ( digraph & g,
const char * id,
node & src_node,
node & dst_node )
inline

References g, m_dst_node, m_id, and m_src_node.

Referenced by diagnostic_edge::diagnostic_edge().

Member Function Documentation

◆ clone()

std::unique_ptr< edge > diagnostics::digraphs::edge::clone ( digraph & new_graph,
const std::map< diagnostics::digraphs::node *, diagnostics::digraphs::node * > & node_mapping ) const

References new_graph().

◆ dump()

DEBUG_FUNCTION void diagnostics::digraphs::edge::dump ( ) const

References dump(), and to_json_sarif_edge().

Referenced by dump().

◆ get_attr()

const char * diagnostics::digraphs::object::get_attr ( const char * key_prefix,
const char * key ) const
inherited

◆ get_dst_node()

node & diagnostics::digraphs::edge::get_dst_node ( ) const
inline

References m_dst_node.

◆ get_id()

std::string diagnostics::digraphs::edge::get_id ( ) const
inline

References m_id.

◆ get_label()

const char * diagnostics::digraphs::edge::get_label ( ) const
inline

References m_label.

◆ get_property_bag()

json::object * diagnostics::digraphs::object::get_property_bag ( ) const
inlineinherited

◆ get_src_node()

node & diagnostics::digraphs::edge::get_src_node ( ) const
inline

References m_src_node.

◆ set_attr()

void diagnostics::digraphs::object::set_attr ( const char * key_prefix,
const char * key,
const char * value )
inherited

References set_json_attr().

◆ set_json_attr()

void diagnostics::digraphs::object::set_json_attr ( const char * key_prefix,
const char * key,
std::unique_ptr< json::value > value )
inherited

References m_property_bag.

Referenced by set_attr().

◆ set_label()

void diagnostics::digraphs::edge::set_label ( const char * label)
inline

◆ set_property_bag()

void diagnostics::digraphs::object::set_property_bag ( std::unique_ptr< json::object > property_bag)
inlineinherited

◆ to_json_sarif_edge()

std::unique_ptr< json::object > diagnostics::digraphs::edge::to_json_sarif_edge ( ) const

Field Documentation

◆ m_dst_node

node& diagnostics::digraphs::edge::m_dst_node
private

Referenced by edge(), and get_dst_node().

◆ m_id

std::string diagnostics::digraphs::edge::m_id
private

Referenced by edge(), and get_id().

◆ m_label

std::unique_ptr<std::string> diagnostics::digraphs::edge::m_label
private

Referenced by get_label(), and set_label().

◆ m_property_bag

std::unique_ptr<json::object> diagnostics::digraphs::object::m_property_bag
privateinherited

◆ m_src_node

node& diagnostics::digraphs::edge::m_src_node
private

Referenced by edge(), and get_src_node().


The documentation for this class was generated from the following files: