code: private void addProjectMethods(final List<Instruction> instructions, final Set<ProjectMethod> projectMethods) {
          Set<MethodIdentifier> projectMethodIdentifiers = findUnhandledProjectMethodIdentifiers(instructions, projectMethods);
  
          for (MethodIdentifier identifier : projectMethodIdentifiers) {
              // TODO cache results -> singleton pool?
  
              final MethodResult methodResult = visitProjectMethod(identifier);
              if (methodResult == null) {
                  continue;
              }
  
              final List<Instruction> nestedMethodInstructions = interpretRelevantInstructions(methodResult.getInstructions());
              projectMethods.add(new ProjectMethod(identifier, nestedMethodInstructions));
              addProjectMethods(nestedMethodInstructions, projectMethods);
          }
      }
docs: Adds all project methods called in the given {@code instructions} to the {@code projectMethods} recursively.
  
  @param instructions   The instructions of the current method
  @param projectMethods All found project methods