void FilesInMemory_showOneFileAsCode (FilesInMemory me, long index, const wchar_t *name, long numberOfBytesPerLine) { if (index < 1 || index > my size) return; MelderInfo_writeLine1 (L"#include \"FileInMemory.h\""); MelderInfo_writeLine1 (L"#include \"melder.h\"\n"); MelderInfo_writeLine1 (L"static FileInMemory create_new_object () {"); MelderInfo_writeLine1 (L"\ttry {"); autoMelderString one_fim; FileInMemory fim = (FileInMemory) my item[index]; MelderString_append (&one_fim, name, Melder_integer (index)); FileInMemory_showAsCode (fim, L"me", numberOfBytesPerLine); MelderInfo_writeLine1 (L"\t\treturn me.transfer();"); MelderInfo_writeLine1 (L"\t} catch (MelderError) {"); MelderInfo_writeLine1 (L"\t\tMelder_throw (L\"FileInMemory not created.\");"); MelderInfo_writeLine1 (L"\t}"); MelderInfo_writeLine1 (L"}\n\n"); MelderInfo_writeLine3 (L"FileInMemory ", name, L" = create_new_object ();"); }
void FileInMemorySet_showOneFileAsCode (FileInMemorySet me, long index, const char32 *name, long numberOfBytesPerLine) { if (index < 1 || index > my size) return; MelderInfo_writeLine (U"#include \"FileInMemory.h\""); MelderInfo_writeLine (U"#include \"melder.h\"\n"); MelderInfo_writeLine (U"static autoFileInMemory create_new_object () {"); MelderInfo_writeLine (U"\ttry {"); autoMelderString one_fim; FileInMemory fim = my at [index]; MelderString_append (& one_fim, name, index); FileInMemory_showAsCode (fim, U"me", numberOfBytesPerLine); MelderInfo_writeLine (U"\t\treturn me;"); MelderInfo_writeLine (U"\t} catch (MelderError) {"); MelderInfo_writeLine (U"\t\tMelder_throw (U\"FileInMemory not created.\");"); MelderInfo_writeLine (U"\t}"); MelderInfo_writeLine (U"}\n\n"); MelderInfo_writeLine (U"autoFileInMemory ", name, U" = create_new_object ();"); }
void FileInMemorySet_showAsCode (FileInMemorySet me, const char32 *name, long numberOfBytesPerLine) { autoMelderString one_fim; MelderInfo_writeLine (U"#include \"Collection.h\""); MelderInfo_writeLine (U"#include \"FileInMemory.h\""); MelderInfo_writeLine (U"#include \"melder.h\"\n"); MelderInfo_writeLine (U"autoFilesInMemory create_", name, U" () {"); MelderInfo_writeLine (U"\ttry {"); MelderInfo_writeLine (U"\t\tautoFilesInMemory me = FilesInMemory_create ();"); for (long ifile = 1; ifile <= my size; ifile ++) { FileInMemory fim = my at [ifile]; MelderString_copy (& one_fim, name, ifile); FileInMemory_showAsCode (fim, one_fim.string, numberOfBytesPerLine); MelderInfo_writeLine (U"\t\tCollection_addItem_move (me.peek(), ", one_fim.string, U".move());\n"); } MelderInfo_writeLine (U"\t\treturn me;"); MelderInfo_writeLine (U"\t} catch (MelderError) {"); MelderInfo_writeLine (U"\t\tMelder_throw (U\"FileInMemorySet not created.\");"); MelderInfo_writeLine (U"\t}"); MelderInfo_writeLine (U"}\n\n"); }
void FilesInMemory_showAsCode (FilesInMemory me, const wchar_t *name, long numberOfBytesPerLine) { autoMelderString one_fim; autoMelderString all_fims; MelderInfo_writeLine1 (L"#include \"Collection.h\""); MelderInfo_writeLine1 (L"#include \"FileInMemory.h\""); MelderInfo_writeLine1 (L"#include \"melder.h\"\n"); MelderInfo_writeLine3 (L"FilesInMemory create_", name, L" () {"); MelderInfo_writeLine1 (L"\ttry {"); MelderInfo_writeLine1 (L"\t\tautoFilesInMemory me = FilesInMemory_create ();"); for (long ifile = 1; ifile <= my size; ifile++) { FileInMemory fim = (FileInMemory) my item[ifile]; MelderString_append (&one_fim, name, Melder_integer (ifile)); FileInMemory_showAsCode (fim, one_fim.string, numberOfBytesPerLine); MelderInfo_writeLine3 (L"\t\tCollection_addItem (me.peek(), ", one_fim.string, L".transfer());\n"); MelderString_empty (&one_fim); } MelderInfo_writeLine1 (L"\t\treturn me.transfer();"); MelderInfo_writeLine1 (L"\t} catch (MelderError) {"); MelderInfo_writeLine1 (L"\t\tMelder_throw (L\"FilesInMemory not created.\");"); MelderInfo_writeLine1 (L"\t}"); MelderInfo_writeLine1 (L"}\n\n"); }