LDeclaration Struct
Detailed Description
A declaration is a specially structured sequence of names that identifies one or more items.
Declarations are structured with an optional traversal (/-separated names),
followed by an optional group (name followed by a .), followed by a name
representing the item(s). All declarations have at least an item, except for
group set declarations which explicitly have a group without an item
following it.
The following examples use the notation from
LName: the outer braces are the name and the inner braces are its expandables. A traversal adds a third level because it is a list of names.
Left Pane // item = {{"Left"}, {"Pane"}}
End.Position // group = {{"End"}}
// item = {{"Position"}}
End. // group = {{"End"}}
// item = {}
Window/(Left,Right) Pane // traversal = {{{"Window"}}}
// item = {{"Left","Right"}, {"Pane"}}
(Cancel,Confirm) Button/Fill // traversal = {{{"Cancel","Confirm"}, {"Button"}}}
// item = {{"Fill"}}
Window/Titlebar/Exit Button // traversal = {{{"Window"}}, {{"Titlebar"}}}
// item = {{"Exit"}, {"Button"}}
Button/Layout.Direction // traversal = {{{"Button"}}}
// group = {{"Layout"}}
// item = {{"Direction"}}