::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:
sequence PARTIAL pure: Iterate over partial matches to dictionary codes.
entry Map..Heap..string, &Dictionary map number -> {code, ...}
Key string :Key to partially match (all if empty).
exit @Pair Key..Heap..string :Digits and associated code words
local Prefix string :Shortest possible match
use Phonecode/Short :Shortest code word size
:
:...............................................................................
Prefix = left( Key, Short ); Shortest possible match.
DO @P from Map( $, Prefix ): DO over matching mapped items,
IF Has.Prefix( Key, P`Key ): IF Key begins with P`Key (case insensitive),
YIELD @P; Export digits and associated code words.
ELSE: ELSE no match,
UNDO IF P`Key > Key; UNDO IF no more items mapped for Prefix.
- .
return
>