#1117 closed todo (done)

Tree-Explorer building block

Reported by: Ichthyostega Owned by:
Priority: normal Milestone: 0integration
Component: lumiera Keywords: design architecture sanity performance
Sub Tickets: Parent Tickets: #283, #874, #1107, #1108, #1114, #1115, #1118, #1276

Description

Create a builder syntax to express a generic tree expanding exploration.

  • the actual tree location state should be a template parameter (treated as opaque state)
  • the concrete meaning of "expanding the tree" should be supplied as functor or lambda
  • while the generic part of the implementation should cover the mechanics of expanding into a stack
  • an extension point for postprocessing of results should be provided
  • implementation should be oriented towards a moveable opaque state core

We address this topic, since it might be a partial solution towards generic building blocks for tree expanding evaluations.
And while the task currently at hand -- resolving wildcards in a UI-coordinate specification -- could well just be "coded up",
the solution for this task looks entirely generic, because it does not depend or rely on the specific nature of UI-coordinates.

Change history (5)

comment:1 by Ichthyostega, at 2017-11-17T19:41:24Z

blocking: 1115, 283, 874, 1107, 1108283, 874, 1107, 1108, 1114, 1115

comment:2 by Ichthyostega, at 2017-11-26T17:37:56Z

blocking: 283, 874, 1107, 1108, 1114, 1115283, 874, 1107, 1108, 1114, 1115, 1118

comment:3 by Ichthyostega, at 2017-12-17T23:42:30Z

Resolution: done
Status: newclosed

This was by no means a simple task, but in the end it was straight forward.

TreeExplorer is now a framework for simple iteration pipelines, with the additional ability to expandChildren()
And there is a special front-end to wrap such a TreeExplorer pipeline heap allocated and only expose an opaque IterSource based front-end handle.
Which is all to fulfill our current needs with respect to UI coordinate resolving.

On the long run, we might consider to discontinue IterExplorer in favour of this new framework, which can be seen as a second design attempt towards a similar underlying theme.

comment:4 by Ichthyostega, at 2023-03-31T13:40:28Z

blocking: 283, 874, 1107, 1108, 1114, 1115, 1118283, 874, 1107, 1108, 1114, 1115, 1118, 1276

comment:5 by Undercover Agent, at 2025-12-25T00:00:00Z

blocking: 283, 874, 1107, 1108, 1114, 1115, 1118, 1276
Parent Tickets: 283, 874, 1107, 1108, 1114, 1115, 1118, 1276

Migration MasterTickets ⟼ Subtickets-plugin

Note: See TracTickets for help on using tickets.