public FunctionRef getFunctionRef() { if (Modifier.isAbstract(modifiers)) { return null; } String owner = declaringClass.replace('.', '/'); String functionName = Modifier.isSynchronized(modifiers) ? Symbols.synchronizedWrapperSymbol(owner, name, desc) : Symbols.methodSymbol(owner, name, desc); return new FunctionRef(functionName, getFunctionType(desc, Modifier.isStatic(modifiers))); }