<> <> <> <<>> <> DIRECTORY Arpa USING [Address]; ArpaRouter: CEDAR DEFINITIONS ~ { <> Hops: TYPE ~ CARD; maxHops: Hops ~ 15; unreachable: Hops ~ Hops.LAST; <> <<>> RoutingTableEntry: TYPE ~ RECORD [ hops: Hops, -- 0 => directly connected immediate: Arpa.Address, -- socket is null time: CARDINAL ]; <<>> GetHops: PROC [Arpa.Address] RETURNS [Hops]; GetRouting: PROC [Arpa.Address] RETURNS [RoutingTableEntry]; Enumerate: PROC [ low: Hops _ 0, high: Hops _ unreachable, proc: PROC [Arpa.Address, RoutingTableEntry] ]; <> Fast: PROC [Arpa.Address] RETURNS [yes: BOOL]; <> }.