Lists containing lists
BlitzMax Forums/BlitzMax Beginners Area/Lists containing lists
| ||
I'm getting muddled up on how to maintain a list where each entry holds a unique list of other items. Something like this for example: butchers > sausages > beef > pork bakers > bread > cakes > buns post office > stamps > envelopes > stationery How do I approach this? So far I have this prototype but I'm a stuck on how to link a list of products to a shop from a list ... shoplist:TList=CreateList() Type shop Field shoptype$ Field productlist:TList ?????????? End Type Global s:shop s=New shoptype s.shoptype$="butchers" |
| ||
shop_list:TLIST = new TLIST type Shop field shop_type:string field product_list:TLIST method new () shop_list.addlast (self) product_list = new TLIST end method method add_product (_name:string) product_list.addlast (product.create(_name)) end method end type type product field name:string function create:product (_name:string) local t:product = new product t.name = _name return t end function end type global s:shop = new shop s.shop_type = "butchers" s.add_product = "sausages" |
| ||
I found a way which is much the same as yours it seems. Thanks for the quick response! ... Framework brl.linkedlist Import brl.standardio Global shoplist:TList=New TList Type shop Field shoptype$ Field productlist:TList=New TList Method New() ListAddLast shoplist,Self End Method Method AddProduct(productname$) p=New producttype p.name$=productname$ ListAddLast productlist,p End Method End Type Global s:shop Type producttype Field name$ End Type Global p:producttype ' =================================== s=New shop s.shoptype$="The Butchers" s.AddProduct "Sausages" s.AddProduct "Bacon" s.AddProduct "Pork" s=New shop s.shoptype$="The Bakers" s.AddProduct "Bread" s.AddProduct "Cakes" s.AddProduct "Buns" s=New shop s.shoptype$="Post Office" s.AddProduct "Stamps" s.AddProduct "Envelopes" s.AddProduct "Stationery" ' show lists For s=EachIn shoplist Print s.shoptype$ For p=EachIn s.productlist Print " > "+p.name$ Next Next |