osindepended.fileformats.text.pas

Переключить прокрутку окна
Загрузить этот исходный код

{
    osindepended.fileformats.text — модуль для реализации текстовых файловых форматов.

    Copyright © 2021 Малик Разработчик

    Это свободная программа: вы можете перераспространять её и/или
    изменять её на условиях Меньшей Стандартной общественной лицензии GNU в том виде,
    в каком она была опубликована Фондом свободного программного обеспечения;
    либо версии 3 лицензии, либо (по вашему выбору) любой более поздней версии.

    Эта программа распространяется в надежде, что она может быть полезна,
    но БЕЗО ВСЯКИХ ГАРАНТИЙ; даже без неявной гарантии ТОВАРНОГО ВИДА
    или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЁННЫХ ЦЕЛЕЙ. Подробнее см. в Меньшей Стандартной
    общественной лицензии GNU.

    Вы должны были получить копию Меньшей Стандартной общественной лицензии GNU
    вместе с этой программой. Если это не так, см.
    <http://www.gnu.org/licenses/>.
}

unit osindepended.fileformats.text;

{$MODE DELPHI}

interface

uses
    pascalx.lang,
    osindepended.fileformats;

{$ASMMODE INTEL,CALLING REGISTER,TYPEINFO ON}

{%region public }
type
    TextDecoder = interface;
    TextEncoder = interface;

    TextDecoder = interface(DataDecoder) ['{E7F76859-6212-4A09-8114-5762B310EF5D}']
        function getLineEnding(): AnsiString;
        function getAnsiStrings(): AnsiString_Array1d;
        function getUnicodeStrings(): UnicodeString_Array1d;
    end;

    TextEncoder = interface(DataEncoder) ['{E7F76859-6212-4A09-8114-5762B310EF5E}']
        procedure setLineEnding(const lineEnding: AnsiString);
        procedure setAnsiStrings(const strings: AnsiString_Array1d);
        procedure setUnicodeStrings(const strings: UnicodeString_Array1d);
    end;
{%endregion}

implementation

initialization
    classInfoAdd([
        typeInfo(TextDecoder),
        typeInfo(TextEncoder)
    ]);

end.