List<VarVersionPair> (ClassNode node, String descriptor, int parameters) { List<VarVersionPair> mask = null; ClassWrapper wrapper = node.getWrapper(); if (wrapper != null) { // own class MethodWrapper methodWrapper = wrapper.getMethodWrapper(CodeConstants.INIT_NAME, descriptor); if (methodWrapper == null) { if (DecompilerContext.getOption(IFernflowerPreferences.IGNORE_INVALID_BYTECODE)) { return null; } throw new RuntimeException("Constructor " + node.classStruct.qualifiedName + "." + CodeConstants.INIT_NAME + descriptor + " not found"); } mask = methodWrapper.synthParameters; } else if (parameters > 0 && node.type == ClassNode.CLASS_MEMBER && (node.access & CodeConstants.ACC_STATIC) == 0) { // non-static member class mask = new ArrayList<>(Collections.nCopies(parameters, null)); mask.set(0, new VarVersionPair(-1, 0)); } return mask; }