Skip to content

Ability to parse a particular train schedule into a struct #1

Description

@danielfeather

I want to be able to be given a train schedule in CIF format. Individual train schedules start with BS and end with LT and then parse that into a struct which represents that train schedule.

Example CIF Extract

BSNP132082412152505110000001 PXX1S758044121730001 EMU397 125      B A F        P
BX         TPY                                                                  
LOMNCRIAP 1610 16104A        TB                                                 
LIHLDGWJ            1612 00000000                                               
LIHLDG              1613 000000001                      1                       
LISLDLJN            1619H00000000   SL                                          
LIARDWCKJ           1621H00000000                       1                       
LIMNCRPIC 1624H1626H     1625162614    SL T                                     
LIMNCROXR 1628 1630      162816302        T                                     
LIMNCRDGT           1631 000000002                      1                       
LIWATSTJN           1633 00000000                                               
LIORDSLLJ           1633H00000000                       1                       
LISLFDCT            1635H000000002                                              
LIBDENJT            1641H00000000   DB                                          
LIBOLTON  1642H1644      000016444        U                                     
LILOSTCKJ           1647H00000000                                               
LICHORLEY           1653 00000000                     2                         
LIEUXTONJ           1657H00000000   FL                                          
LIPRSTRJN           1701H00000000   DFL                                         
LIPRST    1703 1705H     170317053  DFLDFLT                                     
LIPRSTNFJ           1706H00000000                                               
LIBBGHGL            1709H00000000                                               
LIGSTANG            1712H00000000                                               
LILANCSTR 1720 1721H     172017213        T                                     
LIMORCMSJ           1723H00000000                                               
LICRNFNJN           1726 00000000                                               
LIOXENHLM 1734 1735H     173417352        T                                     
LIGRIGG             1741H00000000                     1                         
LITEBAY             1746H00000000                                               
LISHAPSMT           1749H00000000                                               
LISHAPHNS           1752 00000000                                               
LIPNTH    1759H1801      180018012        T           2                         
LICARLILE 1816 1818      181618183        T                                     
LIGRETNAJ           1824H00000000                                               
LIKRKP863           1827 00000000                                               
LILCKRBIE 1835H1837      183618371        T                                     
LIBEATCK            1846 00000000DM                                             
LIBEATCKS           1852 00000000DM                                             
LIABINGTN           1857H00000000DM                   2                         
LICRSTRSS           1909 00000000                                               
LICRSTRSE           1910 00000000                                               
LIACHNGRY           1914 00000000                                               
LICOBB713           1916 00000000                                               
LIMDCLDRJ           1921 00000000                     1   1H                    
LISLATEFD           1930 00000000                                               
LIHAYMRKT 1932H1934      193300003  US    D              H                      
LIPRNCSTG           1936H00000000   X                                           
LTEDINBUR 1939 193912 X  TF                                                     

Potential Struct

struct TrainSchedule {
    lo: Location,
    li: Vec<Location>,
    lt: Location
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    Status
    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions