Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • tests/coroutine/devicedriver.cfa

    r93c86ac r427854b  
    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 : Sat Apr 20 09:07:19 2019
     13// Update Count     : 90
    1414//
    1515
     
    1818
    1919enum Status { CONT, MSG, ESTX, ELNTH, ECRC };
    20 
    2120coroutine Driver {
    2221        Status status;
     
    2423}; // Driver
    2524
    26 void ?{}( Driver & d, char * m ) { d.msg = m; }                 // constructor
    27 
    28 Status next( Driver & d, char b ) with( d ) {                   // called by interrupt handler
    29         byte = b; resume( d ); return status;                           // resume coroutine at last suspend
     25void ?{}( Driver & d, char * m ) { d.msg = m; }
     26Status next( Driver & d, char b ) with( d ) {
     27        byte = b; resume( d ); return status;
    3028} // next
    3129
     
    7573          if ( eof( sin ) ) break eof;                                          // eof ?
    7674                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";
     75                  case MSG:
     76                        sout | "msg:" | msg;
     77                  case ESTX:
     78                        sout | "STX in message";
     79                  case ELNTH:
     80                        sout | "message too long";
     81                  case ECRC:
     82                        sout | "CRC failure";
     83                  default: ;
    8284                } // choose
    8385        } // for
     
    8587
    8688// Local Variables: //
     89// tab-width: 4 //
    8790// compile-command: "cfa -g -Wall -Wextra devicedriver.cfa" //
    8891// End: //
Note: See TracChangeset for help on using the changeset viewer.