Package org.adoptopenjdk.jitwatch.util
Class ParseUtil
- java.lang.Object
-
- org.adoptopenjdk.jitwatch.util.ParseUtil
-
public final class ParseUtil extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringCLASS_NAME_REGEX_GROUPprivate static com.chrisnewland.freelogj.Loggerloggerstatic java.lang.StringMETHOD_NAME_REGEX_GROUPstatic java.lang.StringPARAM_REGEX_GROUPprivate static java.util.regex.PatternPATTERN_LOG_SIGNATUREstatic java.lang.StringRETURN_REGEX_GROUPstatic charTYPE_BOOLEANstatic charTYPE_BYTEstatic charTYPE_CHARACTERstatic charTYPE_DOUBLEstatic charTYPE_FLOATstatic charTYPE_INTEGERstatic charTYPE_LONGstatic charTYPE_SHORTstatic charTYPE_VOID
-
Constructor Summary
Constructors Modifier Constructor Description privateParseUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.StringbytecodeCommentSignatureToLogCompilationSignature(java.lang.String bytcodeCommentSignature)static booleanbytecodeMethodCommentHasNoClassPrefix(java.lang.String comment)static java.lang.StringbytecodeMethodCommentToReadableString(java.lang.String className, java.lang.String comment)static java.lang.Class<?>classForPrimitive(java.lang.String primitiveType)private static booleancompareTypeEquality(java.lang.String memberTypeName, java.lang.String inMspTypeName, java.util.Map<java.lang.String,java.lang.String> genericsMap)static java.lang.StringexpandParameterType(java.lang.String name)static java.lang.StringexpandParseDictionaryTypeName(java.lang.String typeName)static intfindBestLineMatchForMemberSignature(IMetaMember member, java.util.List<java.lang.String> lines)static java.lang.StringfindBestMatchForMemberSignature(IMetaMember member, java.util.List<java.lang.String> lines)static java.util.List<java.lang.Class<?>>findClassesForTypeString(java.lang.String typesString)static java.lang.Class<?>findClassForLogCompilationParameter(java.lang.String param)static IMetaMemberfindMemberWithSignature(IReadOnlyJITDataModel model, java.lang.String logSignature)static intgetArrayBracketCount(java.lang.String param)static intgetArrayDepth(java.lang.String input)static java.lang.StringgetClassFromSource(java.lang.String source)static chargetClassTypeCharForPrimitiveTypeString(java.lang.String type)static java.lang.Class<?>[]getClassTypes(java.lang.String typesString)static IMetaMembergetMemberFromBytecodeComment(IReadOnlyJITDataModel model, IMetaMember currentMember, BytecodeInstruction instruction)static java.lang.StringgetMethodName(java.lang.String methodID, IParseDictionary parseDictionary)static java.util.List<java.lang.String>getMethodTagArguments(Tag methodTag, IParseDictionary parseDictionary)static java.lang.StringgetMethodTagReturn(Tag methodTag, IParseDictionary parseDictionary)static java.lang.StringgetPackageFromSource(java.lang.String source)static java.lang.StringgetParamTypeWithoutArrayBrackets(java.lang.String paramType)static java.lang.Class<?>getPrimitiveClass(char c)static longgetStamp(java.util.Map<java.lang.String,java.lang.String> attrs)static booleanisPrimitive(java.lang.String type)static booleanisVMInternalClass(java.lang.String fqClassName)static MetaClasslateLoadMetaClass(IReadOnlyJITDataModel model, java.lang.String metaClassName)static booleanlooksLikeSyntheticBridgeConstructorParam(java.lang.String className)static IMetaMemberlookupMember(java.lang.String methodId, IParseDictionary parseDictionary, IReadOnlyJITDataModel model)static java.lang.StringlookupMetaClassName(java.lang.String methodId, IParseDictionary parseDictionary)static java.lang.StringlookupMethodName(java.lang.String methodId, IParseDictionary parseDictionary)static java.lang.StringlookupType(java.lang.String typeOrKlassID, IParseDictionary parseDictionary)static booleanparamClassesMatch(boolean memberHasVarArgs, java.util.List<java.lang.Class<?>> memberParamClasses, java.util.List<java.lang.Class<?>> signatureParamClasses, boolean matchTypesExactly)static longparseHexAddress(java.lang.String str)static doubleparseLocaleSafeDouble(java.lang.String str)static longparseLongAttributeFromTag(Tag tag, java.lang.String attrName)static longparseStamp(java.lang.String stamp)static longparseStampFromTag(Tag tag)static java.util.List<java.lang.String>parseTypeString(java.lang.String typesString)static booleanpossibleLambdaMethod(java.lang.String fqClassName)private static java.lang.StringprependCurrentMember(java.lang.String comment, IMetaMember member)static java.lang.String[]splitLogSignatureWithRegex(java.lang.String logSignature)static java.lang.StringstripGenerics(java.lang.String param)static booleantypeIsVarArgs(java.lang.String type)
-
-
-
Field Detail
-
logger
private static final com.chrisnewland.freelogj.Logger logger
-
CLASS_NAME_REGEX_GROUP
public static java.lang.String CLASS_NAME_REGEX_GROUP
-
METHOD_NAME_REGEX_GROUP
public static java.lang.String METHOD_NAME_REGEX_GROUP
-
PARAM_REGEX_GROUP
public static java.lang.String PARAM_REGEX_GROUP
-
RETURN_REGEX_GROUP
public static java.lang.String RETURN_REGEX_GROUP
-
PATTERN_LOG_SIGNATURE
private static final java.util.regex.Pattern PATTERN_LOG_SIGNATURE
-
TYPE_SHORT
public static final char TYPE_SHORT
- See Also:
- Constant Field Values
-
TYPE_CHARACTER
public static final char TYPE_CHARACTER
- See Also:
- Constant Field Values
-
TYPE_BYTE
public static final char TYPE_BYTE
- See Also:
- Constant Field Values
-
TYPE_VOID
public static final char TYPE_VOID
- See Also:
- Constant Field Values
-
TYPE_LONG
public static final char TYPE_LONG
- See Also:
- Constant Field Values
-
TYPE_DOUBLE
public static final char TYPE_DOUBLE
- See Also:
- Constant Field Values
-
TYPE_BOOLEAN
public static final char TYPE_BOOLEAN
- See Also:
- Constant Field Values
-
TYPE_INTEGER
public static final char TYPE_INTEGER
- See Also:
- Constant Field Values
-
TYPE_FLOAT
public static final char TYPE_FLOAT
- See Also:
- Constant Field Values
-
-
Method Detail
-
parseHexAddress
public static long parseHexAddress(java.lang.String str)
-
parseStamp
public static long parseStamp(java.lang.String stamp)
-
parseStampFromTag
public static long parseStampFromTag(Tag tag)
-
parseLongAttributeFromTag
public static long parseLongAttributeFromTag(Tag tag, java.lang.String attrName)
-
getStamp
public static long getStamp(java.util.Map<java.lang.String,java.lang.String> attrs)
-
parseLocaleSafeDouble
public static double parseLocaleSafeDouble(java.lang.String str)
-
getPrimitiveClass
public static java.lang.Class<?> getPrimitiveClass(char c)
-
getArrayDepth
public static int getArrayDepth(java.lang.String input)
-
expandParameterType
public static java.lang.String expandParameterType(java.lang.String name)
-
splitLogSignatureWithRegex
public static java.lang.String[] splitLogSignatureWithRegex(java.lang.String logSignature) throws LogParseException- Throws:
LogParseException
-
findMemberWithSignature
public static IMetaMember findMemberWithSignature(IReadOnlyJITDataModel model, java.lang.String logSignature) throws LogParseException
- Throws:
LogParseException
-
getClassTypes
public static java.lang.Class<?>[] getClassTypes(java.lang.String typesString) throws LogParseException- Throws:
LogParseException
-
findClassForLogCompilationParameter
public static java.lang.Class<?> findClassForLogCompilationParameter(java.lang.String param) throws java.lang.ClassNotFoundException- Throws:
java.lang.ClassNotFoundException
-
stripGenerics
public static java.lang.String stripGenerics(java.lang.String param)
-
paramClassesMatch
public static boolean paramClassesMatch(boolean memberHasVarArgs, java.util.List<java.lang.Class<?>> memberParamClasses, java.util.List<java.lang.Class<?>> signatureParamClasses, boolean matchTypesExactly)
-
typeIsVarArgs
public static boolean typeIsVarArgs(java.lang.String type)
-
getClassTypeCharForPrimitiveTypeString
public static char getClassTypeCharForPrimitiveTypeString(java.lang.String type)
-
isPrimitive
public static boolean isPrimitive(java.lang.String type)
-
classForPrimitive
public static java.lang.Class<?> classForPrimitive(java.lang.String primitiveType)
-
getArrayBracketCount
public static int getArrayBracketCount(java.lang.String param)
-
parseTypeString
public static java.util.List<java.lang.String> parseTypeString(java.lang.String typesString)
-
looksLikeSyntheticBridgeConstructorParam
public static boolean looksLikeSyntheticBridgeConstructorParam(java.lang.String className)
-
findClassesForTypeString
public static java.util.List<java.lang.Class<?>> findClassesForTypeString(java.lang.String typesString) throws java.lang.ClassNotFoundException- Throws:
java.lang.ClassNotFoundException
-
findBestMatchForMemberSignature
public static java.lang.String findBestMatchForMemberSignature(IMetaMember member, java.util.List<java.lang.String> lines)
-
findBestLineMatchForMemberSignature
public static int findBestLineMatchForMemberSignature(IMetaMember member, java.util.List<java.lang.String> lines)
-
compareTypeEquality
private static boolean compareTypeEquality(java.lang.String memberTypeName, java.lang.String inMspTypeName, java.util.Map<java.lang.String,java.lang.String> genericsMap)
-
getParamTypeWithoutArrayBrackets
public static java.lang.String getParamTypeWithoutArrayBrackets(java.lang.String paramType)
-
getMethodTagReturn
public static java.lang.String getMethodTagReturn(Tag methodTag, IParseDictionary parseDictionary)
-
getMethodTagArguments
public static java.util.List<java.lang.String> getMethodTagArguments(Tag methodTag, IParseDictionary parseDictionary)
-
getMethodName
public static java.lang.String getMethodName(java.lang.String methodID, IParseDictionary parseDictionary)
-
lookupMetaClassName
public static java.lang.String lookupMetaClassName(java.lang.String methodId, IParseDictionary parseDictionary)
-
lookupMethodName
public static java.lang.String lookupMethodName(java.lang.String methodId, IParseDictionary parseDictionary)
-
lookupMember
public static IMetaMember lookupMember(java.lang.String methodId, IParseDictionary parseDictionary, IReadOnlyJITDataModel model)
-
lateLoadMetaClass
public static MetaClass lateLoadMetaClass(IReadOnlyJITDataModel model, java.lang.String metaClassName)
-
possibleLambdaMethod
public static boolean possibleLambdaMethod(java.lang.String fqClassName)
-
isVMInternalClass
public static boolean isVMInternalClass(java.lang.String fqClassName)
-
lookupType
public static java.lang.String lookupType(java.lang.String typeOrKlassID, IParseDictionary parseDictionary)
-
expandParseDictionaryTypeName
public static java.lang.String expandParseDictionaryTypeName(java.lang.String typeName)
-
getPackageFromSource
public static java.lang.String getPackageFromSource(java.lang.String source)
-
getClassFromSource
public static java.lang.String getClassFromSource(java.lang.String source)
-
bytecodeMethodCommentToReadableString
public static java.lang.String bytecodeMethodCommentToReadableString(java.lang.String className, java.lang.String comment)
-
bytecodeMethodCommentHasNoClassPrefix
public static boolean bytecodeMethodCommentHasNoClassPrefix(java.lang.String comment)
-
prependCurrentMember
private static java.lang.String prependCurrentMember(java.lang.String comment, IMetaMember member)
-
bytecodeCommentSignatureToLogCompilationSignature
public static java.lang.String bytecodeCommentSignatureToLogCompilationSignature(java.lang.String bytcodeCommentSignature)
-
getMemberFromBytecodeComment
public static IMetaMember getMemberFromBytecodeComment(IReadOnlyJITDataModel model, IMetaMember currentMember, BytecodeInstruction instruction) throws LogParseException
- Throws:
LogParseException
-
-