Difference between revisions of "XCSG:InterproceduralDataFlow"
From AtlasWiki
(adding more precise specifications for StaticLocalVariables, re-ordering to put the more general things first) |
|||
(6 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. | ||
− | | | + | | 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 |