BoostFunction<PackageDoc, String, Object> getHolderPackageName = ReflectionFunctions.createInvokeMethod("name");
BoostFunction replaceSeparators = new StringFunctions(StringFunctions.Operation.replace, ".", "/");
BoostFunction concatenatePath = new StringFunctions( StringFunctions.Operation.prepend, JavadocContext.getSingleton().getConfiguration().docFileDestDirName );
BoostFunction asPathIndex0 = ToPairFunction.createWithFirstConstant(Integer.valueOf(0));
graph.addEdges(startNode, getHolder, getHolderPackage, getHolderPackageName, replaceSeparators, concatenatePath, asPathIndex0);
//combine path
ListAssemblingFunctionWithIndices toPathList = new ListAssemblingFunctionWithIndices(2);
graph.addEdge(asPathIndex0, toPathList);
graph.addEdge(asPathIndex1, toPathList);