I figured it out. .fadjlist is a vector of vectors. Let’s call it vector v. Then, v[i] is the indices of the vertices which are adjacent to the vertex i. Apparently, each vertex in the graph has an index associated with it by default. Good to know.
This is true, but you should never use .fadjlist if you want any sort of guarantee that your code will continue to work. To get the forward adjacency list of a SimpleGraph, please use the fadj accessor.
Similarly, do not access .ne directly. ne() is the accessor. In general, that is, you should not directly access fields of graph structs in LightGraphs. (The current exception is for structs returned from the shortest paths algorithms, and even that should change in time.)
Yes. Because getting forward adjacencies is not part of the API contract and is not valid for other graph types (e.g., SimpleWeightedGraphs), it is not exported. Try LightGraphs.SimpleGraphs.fadj(). But be aware that use of fadj is a code smell that can indicate you’re taking the wrong approach to a given problem. Its primary use is to provide efficient / fast support for core functions like neighbors.