<｜begin▁of▁sentence｜>### Instruction:
As a ghostwriter, let me put this in terms of drafting a compelling narrative for a mystery novel. Imagine you're sketching out the plot for your latest detective story. You've got a complex web of characters and their relationships mapped out in a directed graph. Now, you're pondering a critical scene involving one of your key characters, Detective Smith, who resides at vertex 2 in your graph. To ensure authenticity and coherence in your storyline, you need to meticulously list all edges incident to Detective Smith's character—both the clues he uncovers (out-edges) and the leads he follows (in-edges). 

In this narrative, the "all_edges" method serves as your trusty tool, enabling you to extract all the crucial connections to Detective Smith, propelling your storyline forward with suspense and intrigue.
### Response:
from igraph import Graph

# Create a graph with specified edges
edges = [(0, 1), (0, 2), (1, 2), (2, 3)]
g = Graph(edges=edges, directed=True)

# Get all edges incident to vertex 2
vertex_id = 2
all_edges = g.vs[vertex_id].all_edges()

# Print edges connected to the specified vertex
print([(edge.source, edge.target) for edge in all_edges])
<|EOT|>
