// A = S or Snippet static L snippetsWithTitles(L l) { ifclass Snippet if (first(l) instanceof Snippet) ret map snippetWithTitle_cached((L) l); endif L ids = cast l; final SS map = getSnippetTitles_cached(ids); ret map(func(S id) -> S { fsI(id) + " - " + map.get(fsI(id)) }, ids); } static S snippetsWithTitles(S... ids) { ret join(", ", snippetsWithTitles(asList(ids))); }