public NestedCommandNameHelper this[String s] { get { if(!_nestedCommands.ContainsKey(s)) _nestedCommands[s] = new NestedCommandNameHelper(); return _nestedCommands[s]; } }
public NestedCommandHelper() { Root = new NestedCommandNameHelper(); AllCommands = new HashSet<ICommand>(); }
private NestedCommandTypeHelper GetTyped(NestedCommandNameHelper nameHelper, IEnumerable<Type> types) { NestedCommandTypeHelper typeHelper = nameHelper.TypeHelper; foreach(Type type in types) typeHelper = typeHelper[type]; return typeHelper; }
private NestedCommandNameHelper GetNamed(NestedCommandNameHelper nameHelper, IEnumerable<String> names) { foreach(String subname in names) nameHelper = nameHelper[subname]; return nameHelper; }
private NestedCommandNameHelper GetNamed(NestedCommandNameHelper nameHelper, String pluginName, String name) { return GetNamed(nameHelper[pluginName], name); }
private NestedCommandNameHelper GetNamed(NestedCommandNameHelper nameHelper, String name) { return GetNamed(nameHelper, name.Split(' ')); }