Add 'CfaMetadata' class for encapsulating various metadata about CFAs
Implementations of the CFA
interface contain the actual graph representation of a program as well as additional data (e.g., the main function entry node, the language of the program the CFA represents, LoopStructure
). The new CfaMetadata
class introduced by this MR contains this additional data which simplifies CFA
implementations (only a single CfaMetadata
field for the metadata is required).
Additionally, this MR adds a new CFA metadata attribute that indicates whether a CFA is a supergraph or consists of unconnected functions (see CfaConnectedness
).
We decided to split MR !80 (merged) into multiple parts. This is one of those parts, but it can be reviewed separately.
Edited by Valentin Port