Difference between revisions of "XCSG:InterproceduralDataFlow"

From AtlasWiki
Jump to: navigation, search
 
(7 intermediate revisions by 3 users not shown)
Line 3: Line 3:
 
| extends = DataFlow (Edge)
 
| extends = DataFlow (Edge)
 
| description = Represents [[DataFlow (Edge){{!}}data flows]] between [[Function]]s, or involving [[Variable]]s visible to multiple Functions.
 
| description = Represents [[DataFlow (Edge){{!}}data flows]] between [[Function]]s, or involving [[Variable]]s visible to multiple Functions.
| specified = ParameterPass,Parameter,*,1;Assignment,Variable,*,0..1;Variable,DataFlow (Node),*,*
+
| permitted = Variable,DataFlow (Node),*,*;Assignment,Variable,*,0..1
 +
| specified = ParameterPass,Parameter,*,1;Assignment,ProgramVariable,*,0..1;ReturnValue,StaticDispatchCallSite,1,*;ReturnValue,DynamicDispatchCallSite,1..*,*;ReturnValue,FunctionPointerCallSite,1..*,*
 
}}
 
}}

Latest revision as of 15:21, 27 October 2015

Specification

Metaclass InterproceduralDataFlow
Extends DataFlow (Edge)
Description Represents data flows between Functions, or involving Variables visible to multiple Functions.
Permitted Connections
Predecessor Multiplicity Successor
Variable ✱ ➞ ✱ DataFlow (Node)
Assignment ✱ ➞ 0..1 Variable
Specified Connections
Predecessor Multiplicity Successor
ParameterPass ✱ ➞ 1 Parameter
Assignment ✱ ➞ 0..1 ProgramVariable
ReturnValue 1 ➞ ✱ StaticDispatchCallSite
ReturnValue 1..✱ ➞ ✱ DynamicDispatchCallSite
ReturnValue 1..✱ ➞ ✱ FunctionPointerCallSite