Difference between revisions of "Template:Tree/Subtree"

From Green Family Wiki
Jump to: navigation, search
Line 5: Line 5:
 
* ''index'': i, where parent is the ith child of its parent
 
* ''index'': i, where parent is the ith child of its parent
 
* ''template'': Template to apply to each node (first parameter is the node; ''depth'' and ''index'' are the tree coordinates, 1-based)
 
* ''template'': Template to apply to each node (first parameter is the node; ''depth'' and ''index'' are the tree coordinates, 1-based)
* ''children'': Function mapping a parent to children (first parameter is the node; second parameter is the requested index, 1-based; empty result indicates no more children)
+
* ''children'': Function mapping a parent to children (first parameter is the node; ''depth'' and ''index'' are the tree coordinates of the child, 1-based; empty result indicates no more children)
 
</noinclude><includeonly>{{{{{template}}}|{{{current parent}}}|
 
</noinclude><includeonly>{{{{{template}}}|{{{current parent}}}|
 
   depth={{{depth}}}
 
   depth={{{depth}}}
Line 11: Line 11:
 
}}{{Tree/Children|{{{1}}}|{{{1}}}|
 
}}{{Tree/Children|{{{1}}}|{{{1}}}|
 
| current parent={{{current parent}}}
 
| current parent={{{current parent}}}
| current child={{{{{children}}}|{{{current parent}}}|1}}
+
| current child={{{{{children}}}|{{{current parent}}}| depth={{#expr:{{{depth}}}+1}} | index=1}}
 
| depth={{#expr:{{{depth}}}+1}}
 
| depth={{#expr:{{{depth}}}+1}}
 
| index=1
 
| index=1

Revision as of 06:30, 18 June 2015

Helper for Template:Tree: apply a template to a string, and then recursively apply this function to each "child", as defined by a function.

  • First parameter: Delimiter to prefix future nodes
  • current parent: Parent of this subtree
  • depth: Depth of parent
  • index: i, where parent is the ith child of its parent
  • template: Template to apply to each node (first parameter is the node; depth and index are the tree coordinates, 1-based)
  • children: Function mapping a parent to children (first parameter is the node; depth and index are the tree coordinates of the child, 1-based; empty result indicates no more children)