Ignore:
Timestamp:
Aug 17, 2024, 3:15:21 PM (15 months ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
master
Children:
df2e00f
Parents:
afb15cf
Message:

first attempt changing end-of-file to an exception

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tests/coroutine/devicedriver.cfa

    rafb15cf r3ac5fd8  
    1010// Created On       : Sat Mar 16 15:30:34 2019
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Sat Jun 17 09:11:56 2023
    13 // Update Count     : 94
     12// Last Modified On : Thu Aug 15 18:45:45 2024
     13// Update Count     : 96
    1414//
    1515
     
    7171
    7272        sin | nlOn;                                                                                     // read newline (all) characters
    73   eof: for () {                                                                                 // read until end of file
    74                 sin | byte;                                                                             // read one character
    75           if ( eof( sin ) ) break eof;                                          // eof ?
    76                 choose( next( driver, byte ) ) {                                // analyse character
    77                   case CONT: ;
    78                   case MSG: sout | "msg:" | msg;
    79                   case ESTX: sout | "STX in message";
    80                   case ELNTH: sout | "message too long";
    81                   case ECRC: sout | "CRC failure";
    82                 } // choose
    83         } // for
     73        try {
     74                for () {                                                                                // read until end of file
     75                        sin | byte;                                                                     // read one character
     76                        choose( next( driver, byte ) ) {                        // analyse character
     77                          case CONT: ;
     78                          case MSG: sout | "msg:" | msg;
     79                          case ESTX: sout | "STX in message";
     80                          case ELNTH: sout | "message too long";
     81                          case ECRC: sout | "CRC failure";
     82                        } // choose
     83                } // for
     84        } catch( end_of_file * ) {
     85        } // try
    8486} // main
    8587
Note: See TracChangeset for help on using the changeset viewer.