From e737c7ea136e9a4fffd925b39f90a736493d9770 Mon Sep 17 00:00:00 2001 From: ronny Date: Tue, 7 Oct 2003 08:12:34 +0000 Subject: move (open/close)TclFile from type_io to compile this removes a platform dependency from the frontend git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1385 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d --- frontend/type_io.dcl | 9 --------- frontend/type_io.icl | 54 ---------------------------------------------------- 2 files changed, 63 deletions(-) (limited to 'frontend') diff --git a/frontend/type_io.dcl b/frontend/type_io.dcl index 15962ca..d9153f3 100644 --- a/frontend/type_io.dcl +++ b/frontend/type_io.dcl @@ -3,15 +3,6 @@ */ definition module type_io -openTclFile :: !Bool !String !*Files -> (Optional .File, !*Files) -closeTclFile :: !*(Optional *File) *Files -> *(!Bool,*Files) - -baseName :: {#Char} -> {#Char} - -directoryName :: {#Char} -> {#Char} - -splitBy :: Char {#Char} -> [{#Char}] - // WARNING: It is essential to report changes in this module to martijnv@cs.kun.nl // because the binary format for type-files is used by the dynamic run-time // system. diff --git a/frontend/type_io.icl b/frontend/type_io.icl index 433346f..3c0c5d0 100644 --- a/frontend/type_io.icl +++ b/frontend/type_io.icl @@ -472,57 +472,3 @@ where = write_type_info c2 tcl_file wtis = (tcl_file,wtis) -from CoclSystemDependent import DirectorySeparator, ensureCleanSystemFilesExists - -openTclFile :: !Bool !String !*Files -> (Optional .File, !*Files) -openTclFile False icl_mod_pathname files - = (No,files) -openTclFile compile_for_dynamics icl_mod_pathname files - # csf_path - = directoryName icl_mod_pathname +++ "Clean System Files" - # tcl_path - = csf_path +++ {DirectorySeparator} +++ baseName icl_mod_pathname +++ ".tcl" - # (opened, tcl_file, files) - = fopen tcl_path FWriteData files - | opened - = (Yes tcl_file, files) - // try again after creating Clean System Files folder - # (ok, files) - = ensureCleanSystemFilesExists csf_path files - | not ok - = abort ("can't create folder \"" +++ csf_path +++"\"\n") - # (opened, tcl_file, files) - = fopen tcl_path FWriteData files - | opened - =(Yes tcl_file, files) - = abort ("couldn't open file \"" +++ tcl_path +++ "\"\n") - -closeTclFile :: !*(Optional *File) *Files -> *(!Bool,*Files) -closeTclFile (Yes tcl_file) files - = fclose tcl_file files -closeTclFile _ files - = (True,files); - -// copy from compile.icl ... -baseName :: {#Char} -> {#Char} -baseName path - = last (splitBy DirectorySeparator path) - -directoryName :: {#Char} -> {#Char} -directoryName path - = foldr (\p ps -> p +++ {DirectorySeparator} +++ ps) "" (init (splitBy DirectorySeparator path)) - -splitBy :: Char {#Char} -> [{#Char}] -splitBy char string - = splitBy` 0 0 - where - splitBy` frm to - | to >= stringSize - = [string % (frm, to-1)] - | string.[to] == char - = [string % (frm, to-1) : splitBy` (to+1) (to+1)] - // otherwise - = splitBy` frm (to+1) - stringSize - = size string -// ... copy from compile.icl \ No newline at end of file -- cgit v1.2.3