public void AddNamespaceList(NamespaceList list, object particle, bool allowLocal) {
switch (list.Type) {
case NamespaceList.ListType.Any:
particleLast = particle;
break;
case NamespaceList.ListType.Other:
// Create a symbol for the excluded namespace, but don't set a particle for it.
AddWildcard(list.Excluded, null);
if (!allowLocal) {
AddWildcard(string.Empty, null); //##local is not allowed
}
break;
case NamespaceList.ListType.Set:
foreach(string wildcard in list.Enumerate) {
AddWildcard(wildcard, particle);
}
break;
}
}