P4C
The P4 Compiler
 
Loading...
Searching...
No Matches
P4Tools::P4Testgen::CoverableNodesScanner Class Reference
Inheritance diagram for P4Tools::P4Testgen::CoverableNodesScanner:

Public Member Functions

 CoverableNodesScanner (const ExecutionState &state)
 
const P4::Coverage::CoverageSetgetCoverableNodes ()
 
void updateNodeCoverage (const IR::Node *node, P4::Coverage::CoverageSet &nodes)
 

Detailed Description

CoverableNodesScanner is similar to CollectNodes. It collects all the nodes present in a particular node. However, compared to CollectNodes, it traverses the entire subsequent parser DAG for a particular parser state. If there is a loop in the parser state, it will terminate. TODO: Consider caching this information.

Member Function Documentation

◆ getCoverableNodes()

const P4::Coverage::CoverageSet & P4Tools::P4Testgen::CoverableNodesScanner::getCoverableNodes ( )
Returns
the set of coverable nodes in the program.

◆ updateNodeCoverage()

void P4Tools::P4Testgen::CoverableNodesScanner::updateNodeCoverage ( const IR::Node * node,
P4::Coverage::CoverageSet & nodes )

Apply the input node

Parameters
nodeand insert the newly covered nodes into the provided coverage set.