Akka.Actor.LocalActorRef.GetChild C# (CSharp) Method

GetChild() public method

public GetChild ( IEnumerable name ) : IActorRef
name IEnumerable
return IActorRef
        public override IActorRef GetChild(IEnumerable<string> name)
        {
            var current = (IActorRef) this;
            int index = 0;
            foreach (string element in name)
            {
                var currentLocalActorRef = current as LocalActorRef;
                if(currentLocalActorRef!=null)
                {
                    switch(element)
                    {
                        case "..":
                            current = currentLocalActorRef.Parent;
                            break;
                        case "":
                            break;
                        default:
                            current = currentLocalActorRef.GetSingleChild(element);
                            break;
                    }
                }
                else
                {
                    //Current is not a LocalActorRef
                    if (current != null)
                    {
                        var rest = name.Skip(index).ToList();
                        return current.AsInstanceOf<IInternalActorRef>().GetChild(rest);
                    }
                    throw new NotSupportedException("Bug, we should not get here");
                }
                index++;
            }
            return current;
        }
    }