Save/load AST 和 M3 from/to 文件
Save/load AST and M3 from/to file
创建 AST 或 M3 可能需要一些时间,具体取决于您要加载的项目的大小。那么有没有办法将 AST 或 M3 存储在文件中?所以下次您需要它时,您不必再次创建它,因为您可以从文件中加载完整的东西。
您可以使用 ValueIO
读取和写入任何值 from/to 磁盘,如下所示:
rascal>writeBinaryValueFile(|home:///myFile.txt|, myValue)
ok
rascal>readBinaryValueFile(#myType, |home:///myFile.txt|)
myType: myValue
或更易读的文本格式:
rascal>writeTextValueFile(|home:///myFile.txt|, myValue)
ok
rascal>readTextValueFile(#myType, |home:///myFile.txt|)
myType: myValue
还有其他格式的 JSON 和 CSV(反)序列化程序,可在 lang::json::IO
和 lang::csv::IO
中找到
创建 AST 或 M3 可能需要一些时间,具体取决于您要加载的项目的大小。那么有没有办法将 AST 或 M3 存储在文件中?所以下次您需要它时,您不必再次创建它,因为您可以从文件中加载完整的东西。
您可以使用 ValueIO
读取和写入任何值 from/to 磁盘,如下所示:
rascal>writeBinaryValueFile(|home:///myFile.txt|, myValue)
ok
rascal>readBinaryValueFile(#myType, |home:///myFile.txt|)
myType: myValue
或更易读的文本格式:
rascal>writeTextValueFile(|home:///myFile.txt|, myValue)
ok
rascal>readTextValueFile(#myType, |home:///myFile.txt|)
myType: myValue
还有其他格式的 JSON 和 CSV(反)序列化程序,可在 lang::json::IO
和 lang::csv::IO