Class Graph
- java.lang.Object
-
- com.ss.android.ugc.bytex.common.graph.Graph
-
public class Graph extends java.lang.ObjectClass dependency graph.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbacktrackToParent(ClassNode classNode, java.util.function.Function<ClassNode,java.lang.Boolean> visitor)java.util.List<ClassNode>childrenOf(java.lang.String className)FieldEntityconfirmOriginField(java.lang.String owner, java.lang.String name, java.lang.String desc)MethodEntityconfirmOriginMethod(java.lang.String owner, java.lang.String name, java.lang.String desc)Nodeget(java.lang.String className)java.lang.StringgetCommonSuperClass(java.lang.String type1, java.lang.String type2)Returns the common super type of the two given types.java.util.Map<java.lang.String,Node>getNodes()booleanimplementOf(java.lang.String child, java.lang.String interfaceName)java.util.List<ClassNode>implementsOf(java.lang.String interfaceName)booleaninherit(java.lang.String child, java.lang.String parent)booleaninstanceofClass(java.lang.String className, java.lang.String targetClassName)booleanoverridedBySubclass(java.lang.String className, java.lang.String methodName, java.lang.String desc)Judge the method whether it is overrided by children.booleanoverrideFromSuper(java.lang.String className, java.lang.String methodName, java.lang.String desc)judge the method whether it overrides from superior or interfaces.voidtraverseAllChild(ClassNode classNode, java.util.function.Consumer<ClassNode> visitor)voidtraverseChildren(ClassNode classNode, java.util.function.Function<ClassNode,java.lang.Boolean> visitor)voidtraverseChildren(InterfaceNode interfaceNode, java.util.function.Function<Node,java.lang.Boolean> visitor)
-
-
-
Field Detail
-
nodeMap
protected java.util.Map<java.lang.String,Node> nodeMap
-
-
Method Detail
-
inherit
public boolean inherit(java.lang.String child, java.lang.String parent)
-
get
public Node get(java.lang.String className)
-
getCommonSuperClass
public java.lang.String getCommonSuperClass(java.lang.String type1, java.lang.String type2)Returns the common super type of the two given types.- Parameters:
type1- the internal name of a class.type2- the internal name of another class.- Returns:
- the internal name of the common super class of the two given classes.
-
implementsOf
public java.util.List<ClassNode> implementsOf(java.lang.String interfaceName)
-
implementOf
public boolean implementOf(java.lang.String child, java.lang.String interfaceName)
-
childrenOf
public java.util.List<ClassNode> childrenOf(java.lang.String className)
-
instanceofClass
public boolean instanceofClass(java.lang.String className, java.lang.String targetClassName) throws java.lang.ClassNotFoundException- Throws:
java.lang.ClassNotFoundException
-
traverseAllChild
public void traverseAllChild(ClassNode classNode, java.util.function.Consumer<ClassNode> visitor)
-
traverseChildren
public void traverseChildren(ClassNode classNode, java.util.function.Function<ClassNode,java.lang.Boolean> visitor)
-
traverseChildren
public void traverseChildren(InterfaceNode interfaceNode, java.util.function.Function<Node,java.lang.Boolean> visitor)
-
backtrackToParent
public void backtrackToParent(ClassNode classNode, java.util.function.Function<ClassNode,java.lang.Boolean> visitor)
-
overrideFromSuper
public boolean overrideFromSuper(java.lang.String className, java.lang.String methodName, java.lang.String desc)judge the method whether it overrides from superior or interfaces.
-
overridedBySubclass
public boolean overridedBySubclass(java.lang.String className, java.lang.String methodName, java.lang.String desc)Judge the method whether it is overrided by children.
-
confirmOriginField
public FieldEntity confirmOriginField(java.lang.String owner, java.lang.String name, java.lang.String desc)
-
confirmOriginMethod
public MethodEntity confirmOriginMethod(java.lang.String owner, java.lang.String name, java.lang.String desc)
-
getNodes
public java.util.Map<java.lang.String,Node> getNodes()
-
-