Пример #1
0
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 ();");
}
Пример #2
0
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 ();");
}
Пример #3
0
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");
}
Пример #4
0
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");
}