I have successfully implemented a Dijkstra algorithm for finding optimal routes in road networks. I have constructed the data so that there are no "nodes", instead I use road segments, and the segments have links to all other connected road segments.
Turn restrictions from one road segment to another road segments are very simple to implement (if restricted turn found, then just don't add that link to the open links priority queue).
However, my road network contains more complex turn restrictions (or restricted "driving manoeuvres"):
How could I take this kind of restrictions into accout with Dijkstra, where route from 0 to 5 via 1-2-3-4 is not allowed, but route from 0 to 5 via 6-7-8 is allowed? Or is this even possible with Dijkstra?

