Class PrefixTransferFunctionProvider
java.lang.Object
org.scandroid.prefixtransfer.PrefixTransferFunctionProvider
- All Implemented Interfaces:
ITransferFunctionProvider<InstanceKeySite,
PrefixVariable>
public class PrefixTransferFunctionProvider
extends Object
implements ITransferFunctionProvider<InstanceKeySite,PrefixVariable>
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionTODO: perhaps this should go with a Lattice object instead.boolean
boolean
-
Constructor Details
-
PrefixTransferFunctionProvider
public PrefixTransferFunctionProvider()
-
-
Method Details
-
getEdgeTransferFunction
public UnaryOperator<PrefixVariable> getEdgeTransferFunction(InstanceKeySite src, InstanceKeySite dst) - Specified by:
getEdgeTransferFunction
in interfaceITransferFunctionProvider<InstanceKeySite,
PrefixVariable> - Returns:
- the transfer function from OUT_src -> EDGE_<src,dst>
-
getMeetOperator
Description copied from interface:ITransferFunctionProvider
TODO: perhaps this should go with a Lattice object instead. TODO: provide an API to allow composition of the meet operator with the flow operator for a given block, as an optimization?- Specified by:
getMeetOperator
in interfaceITransferFunctionProvider<InstanceKeySite,
PrefixVariable>
-
getNodeTransferFunction
- Specified by:
getNodeTransferFunction
in interfaceITransferFunctionProvider<InstanceKeySite,
PrefixVariable> - Returns:
- the transfer function from IN_node -> OUT_node
-
hasEdgeTransferFunctions
public boolean hasEdgeTransferFunctions()- Specified by:
hasEdgeTransferFunctions
in interfaceITransferFunctionProvider<InstanceKeySite,
PrefixVariable> - Returns:
- true if this provider provides edge transfer functions
-
hasNodeTransferFunctions
public boolean hasNodeTransferFunctions()- Specified by:
hasNodeTransferFunctions
in interfaceITransferFunctionProvider<InstanceKeySite,
PrefixVariable> - Returns:
- true if this provider provides node transfer functions
-