:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: : Generated method to invoke 'Phonecode'; no changes should be needed. : method ROOT.PHONECODE: Print word combinations for a list of phone numbers. entry Argc word, &Number of command parameters. Argv[0] C.String, &Address of the command line text. Envp[0] C.String :Address of the environment (not used). local Method Signature, &Method description. List[1 to 2] Declaration, &Parameter list description. Call[1 to 2] string, &Callers argument list. Base Type, & Code# Path, &Path of a code word dictionary file. Phone# Path :Path of a phone number file. use Program.Argument*, &Signature type encodings. Type* :Primitive type encodings. : :............................................................................... IF Argc = 1 HELP.PHONECODE ELSE SIGNATURE Method, "PHONECODE", List, 0, & "Print word combinations for a list of phone numbers." Base`Type = @Path.Type PARAMETER Method, "CODE", .Entry, Base, '', & "Path of a code word dictionary file." Base`Type = @Path.Type PARAMETER Method, "PHONE", .Entry, Base, '', & "Path of a phone number file." ARGUMENT.POSITIONAL Argc, Argv, &Scan arguments into a positional array. Method, Call IF Call[ 1 ] = "": IF PRINT "The Code parameter requires an argument." HELP.PHONECODE ELSE IF Call[ 2 ] = "": ELSE IF PRINT "The Phone parameter requires an argument." HELP.PHONECODE ELSE: ELSE Code#`Value = Call[ 1 ] Phone#`Value = Call[ 2 ] PHONECODE &Invoke the program entry point. Code#, &Path of a code word dictionary file. Phone# :Path of a phone number file. . . return