%%%%%%%%% %% Fortran ISO/IEC 1539:1991 section R10xx Input/Output Editing %%%%%%%%% module languages/fortran/syntax/R1000_IOEditing imports %% needed for Icon, Scon, LblDef: languages/fortran/syntax/FortranLex exports sorts BlankInterpEditDescr CharStringEditDescr ControlEditDescr DataEditDescr FormatItem FormatItemList FormatStmt PositionEditDescr SignEditDescr context-free syntax %%R1001 %%R1002 LblDef 'format' '(' FormatItemList? ')' EOS -> FormatStmt { FormatItem ","}+ -> FormatItemList %%R1003 Icon? DataEditDescr -> FormatItem ControlEditDescr -> FormatItem CharStringEditDescr -> FormatItem Icon? DataEditDescr -> FormatItem Icon? '(' FormatItemList ')' -> FormatItem FormatItem ":" FormatItem -> FormatItem %%R1005-R1009 'I' Icon ('.' Icon)? -> DataEditDescr 'O' Icon ('.' Icon)? -> DataEditDescr 'B' Icon ('.' Icon)? -> DataEditDescr 'Z' Icon ('.' Icon)? -> DataEditDescr 'F' Icon '.' Icon -> DataEditDescr 'E' Icon '.' Icon ('E' Icon)? -> DataEditDescr 'EN' Icon '.' Icon ('E' Icon)? -> DataEditDescr 'ES' Icon '.' Icon ('E' Icon)? -> DataEditDescr 'G' Icon '.' Icon ('E' Icon)? -> DataEditDescr 'L' Icon -> DataEditDescr 'A' Icon? -> DataEditDescr 'D' Icon '.' Icon -> DataEditDescr %%R1010,R1011 PositionEditDescr -> ControlEditDescr Icon? '/' -> ControlEditDescr ':' -> ControlEditDescr SignEditDescr -> ControlEditDescr ('-'|'+')? Icon 'P' (Icon? DataEditDescr)? -> ControlEditDescr BlankInterpEditDescr -> ControlEditDescr %%R1012, R1013 'T' Icon -> PositionEditDescr 'TL' Icon -> PositionEditDescr 'TR' Icon -> PositionEditDescr Icon 'X' -> PositionEditDescr %%R1014 'S' -> SignEditDescr 'SP' -> SignEditDescr 'SS' -> SignEditDescr %%R1015 'BN' -> BlankInterpEditDescr 'BZ' -> BlankInterpEditDescr %%R1016 Scon -> CharStringEditDescr Icon 'H' Character+ -> CharStringEditDescr