systemc-clang 2.0.0
Parsing SystemC constructs
Loading...
Searching...
No Matches
parselib.transforms.port_expansion.PortExpansion Class Reference
Inheritance diagram for parselib.transforms.port_expansion.PortExpansion:
Collaboration diagram for parselib.transforms.port_expansion.PortExpansion:

Public Member Functions

 __init__ (self)
 
 create_inport (self, t, meta)
 
 create_outport (self, t, meta)
 
 create_channel (self, t, meta)
 
 create_inport_decl (self, name, meta)
 
 create_outport_decl (self, name, meta)
 
 create_channel_decl (self, name, meta)
 
 modportsiglist (self, tree)
 
 portbindinglist (self, tree)
 
 hmodule (self, tree)
 
- Public Member Functions inherited from parselib.transforms.top_down.TopDown
 __default__ (self, t)
 

Public Attributes

 expanded = list()
 

Private Member Functions

 __expand_sc_rvd (self, tree, inout=None)
 
 __expand_sc_rvd_binding_pair (self, tree)
 
 __expand_port (self, tree)
 
 __expand_vardecl (self, tree)
 
 __set_expanded (self, var_name, bundle_type_name)
 
 __get_expanded (self, var_name)
 

Detailed Description

Definition at line 9 of file port_expansion.py.

Constructor & Destructor Documentation

◆ __init__()

parselib.transforms.port_expansion.PortExpansion.__init__ ( self)
Expands mixed port objects such as sc_rvd into in-port and out-port
This pass should come **before** typedef expansion

Reimplemented from parselib.transforms.top_down.TopDown.

Definition at line 10 of file port_expansion.py.

Member Function Documentation

◆ __expand_port()

parselib.transforms.port_expansion.PortExpansion.__expand_port ( self,
tree )
private

Definition at line 104 of file port_expansion.py.

◆ __expand_sc_rvd()

parselib.transforms.port_expansion.PortExpansion.__expand_sc_rvd ( self,
tree,
inout = None )
private

Definition at line 37 of file port_expansion.py.

◆ __expand_sc_rvd_binding_pair()

parselib.transforms.port_expansion.PortExpansion.__expand_sc_rvd_binding_pair ( self,
tree )
private

Definition at line 85 of file port_expansion.py.

◆ __expand_vardecl()

parselib.transforms.port_expansion.PortExpansion.__expand_vardecl ( self,
tree )
private

Definition at line 122 of file port_expansion.py.

◆ __get_expanded()

parselib.transforms.port_expansion.PortExpansion.__get_expanded ( self,
var_name )
private

Definition at line 140 of file port_expansion.py.

◆ __set_expanded()

parselib.transforms.port_expansion.PortExpansion.__set_expanded ( self,
var_name,
bundle_type_name )
private

Definition at line 135 of file port_expansion.py.

◆ create_channel()

parselib.transforms.port_expansion.PortExpansion.create_channel ( self,
t,
meta )

Definition at line 25 of file port_expansion.py.

◆ create_channel_decl()

parselib.transforms.port_expansion.PortExpansion.create_channel_decl ( self,
name,
meta )

Definition at line 34 of file port_expansion.py.

◆ create_inport()

parselib.transforms.port_expansion.PortExpansion.create_inport ( self,
t,
meta )

Definition at line 19 of file port_expansion.py.

◆ create_inport_decl()

parselib.transforms.port_expansion.PortExpansion.create_inport_decl ( self,
name,
meta )

Definition at line 28 of file port_expansion.py.

◆ create_outport()

parselib.transforms.port_expansion.PortExpansion.create_outport ( self,
t,
meta )

Definition at line 22 of file port_expansion.py.

◆ create_outport_decl()

parselib.transforms.port_expansion.PortExpansion.create_outport_decl ( self,
name,
meta )

Definition at line 31 of file port_expansion.py.

◆ hmodule()

parselib.transforms.port_expansion.PortExpansion.hmodule ( self,
tree )

Definition at line 171 of file port_expansion.py.

◆ modportsiglist()

parselib.transforms.port_expansion.PortExpansion.modportsiglist ( self,
tree )

Definition at line 146 of file port_expansion.py.

◆ portbindinglist()

parselib.transforms.port_expansion.PortExpansion.portbindinglist ( self,
tree )

Definition at line 162 of file port_expansion.py.

Member Data Documentation

◆ expanded

parselib.transforms.port_expansion.PortExpansion.expanded = list()

Definition at line 16 of file port_expansion.py.


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