// // Copyright (C) 1999, 2000 Refal+ Development Group // // Refal+ is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // Refal+ is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with Refal+; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // // $Source$ // $Revision$ // $Date$ // Author: Andrey Slepuhin $use StdIO ; $use Apply ; $use Arithm ; $use Box ; $use File ; $use Table ; RFP-Src-Open-File e.filename = :: s.chl, , FILE &RFP-Get-Line-From-File (e.filename) (s.chl); RFP-Src-Close s.srctype s.getline-func (e.name) (e.src) = s.srctype : { FILE = e.src : s.channel, ; STDIN = ; }; RFP-Src-Open-StdIN = STDIN &RFP-Get-Line-From-File ('StdIN') (); RFP-Get-Line-From-File s.channel = ; RFP-Get-Line-From-StdIN e = ; RFP-Src-Get-Line e.source = e.source : s.srctype s.getline-func (e.name) (e.src), ; RFP-Next-Row s.row s.col = <"+" s.row 1> 1; RFP-Next-Column s.row s.col = s.row <"+" s.col 1>; RFP-Source-File-Name s.idx = ; RFP-Dir-Name e.f = : s.dir-separator, { e.f : $r e.base s.dir-separator e = e.base; '.'; }; RFP-File-Name e.f = : s.dir-separator, { e.f : $r e s.dir-separator e.file = e.file; e.f; }; RFP-Module-Name e.path = :: e.file, { e.file : $r e.module '.' e = e.module; e.file; };