我正在構建一個編譯器,並在其中生成一個代表傳入的源代碼程序的樹。我想顯示這是一棵像時尚的樹,所以我可以顯示該計劃的結構給任何感興趣的人。漂亮的打印Ruby中的樹形數據結構
現在我只是有一行這樣的樹印:
ProgramNode -> 'Math' BlockNode -> DeclarationNode -> ConstantDeclarationNode -> const ConstantListNode -> [m := 7, ConstantANode -> [n := StringLiteralNode -> ""TEST"" ]] ;
我想什麼是這樣的:
ProgramNode
/ \
'Math' BlockNode
|
DeclarationNode
|
ConstantDeclarationNode ------------------------------
/ \ |
const ConstantListNode |
/| \ \ |
m := 7 ConstantANode |
/| \ |
n := StringLiteralNode |
/ | \ |
" TEST " ;
我還沒有真正樹木工作在Ruby中,它們通常如何表示?
任何幫助,將不勝感激。
+1爲漂亮的ASCII樹:) –
你只是想在ASCII產生的樹? – Sean
首先打印樹*側面*,根節點,縮進。請參閱LISP S表達式以瞭解表示/打印樹的規範方法。完成這件事需要1-2個小時。 –