Soup Functions
soup:GetIndexes()
soup
. This method is not supported for union soups. Here are some examples of its use:
internalStore := GetStores()[0]; namesSoup := internalStore:GetSoup("Names"); Print(namesSoup:GetIndexes()); [{structure: slot, path: sortOn, type: String, index: 125}]
calendarSoup := internalSoup:GetSoup("Calendar"); Print(calendarSoup:GetIndexes()); [{structure: slot, path: mtgStartDate, type: Int, index: 96}, {structure: slot, path: mtgAlarm, type: Int, index: 98}]
soup:AddIndexXmit(indexSpec, changeSymbol)
soup
index as specified by the indexSpec
frame. This method is not supported for union soups. The changeSymbol
is a symbol specifying who made the change (it is usually an application symbol). If changeSymbol
is nil
, no change notification is done. Here is an example that adds a single-slot index:
mySoup:AddIndexXmit( { structure: 'slot, path: 'name, type: 'string, } '|ProgNewton:Calliope|);
soup:RemoveIndexXmit(indexPath, changeSymbol)
soup
index on the path indexPath
. This method works on both union and nonunion soups. The changeSymbol
is a symbol specifying who made the change (it is usually an application symbol). If changeSymbol
is nil
, no change notification is done.Here is an example that removes a single-slot index:
mySoup:RemoveIndexXmit('name, '|ProgNewton:Calliope|);Here is an example that removes a multislot index:
mySoup:RemoveIndexXmit(['name, 'age], '|ProgNewton:Calliope|);
soup:RemoveFromStoreXmit(changeSymbol)
soup
from the store it is on. This method is not supported for union soups. The changeSymbol
is a symbol specifying who made the change (it is usually an application symbol). If changeSymbol
is nil
, no change notification is done. Here is an example:
soup := GetStores()[0]:GetSoup("Foo"); soup:RemoveFromStoreXmit('|ProgNewton:Calliope|);
soup:IsValid()
true
if soup
is valid, and nil
otherwise. A soup is invalid if it has been deleted or if the store that it is on has been removed. Here is an example:
soup := GetStores()[0]:GetSoup("Foo"); Print(soup:IsValid()) TRUE soup:RemoveFromStore(); Print(soup:IsValid()) NIL
An online version of Programming for the Newton using Macintosh, 2nd ed. ©1996, 1994, Julie McKeehan and Neil Rhodes.
Last modified: 1 DEC 1996