00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef __ZStrim_CRLF__
00026 #define __ZStrim_CRLF__ 1
00027 #include "zconfig.h"
00028
00029 #include "ZStrim.h"
00030
00031
00032 #pragma mark -
00033 #pragma mark * ZStrimR_CRLFRemove
00034
00036
00037 class ZStrimR_CRLFRemove : public ZStrimR
00038 {
00039 public:
00040 ZStrimR_CRLFRemove(const ZStrimR& iStrimSource);
00041 ZStrimR_CRLFRemove(UTF32 iReplaceCP, const ZStrimR& iStrimSource);
00042
00043
00044 virtual void Imp_ReadUTF32(UTF32* iDest, size_t iCount, size_t* oCount);
00045
00046 private:
00047 const ZStrimR& fStrimSource;
00048 UTF32 fReplaceCP;
00049 bool fLastWasCR;
00050 };
00051
00052
00053 #pragma mark -
00054 #pragma mark * ZStrimW_CRLFRemove
00055
00057
00058 class ZStrimW_CRLFRemove : public ZStrimW_NativeUTF32
00059 {
00060 public:
00061 ZStrimW_CRLFRemove(const ZStrimW& iStrimSink);
00062 ZStrimW_CRLFRemove(UTF32 iReplaceCP, const ZStrimW& iStrimSink);
00063
00064 virtual void Imp_WriteUTF32(const UTF32* iSource, size_t iCountCU, size_t* oCountCU);
00065
00066 private:
00067 const ZStrimW& fStrimSink;
00068 UTF32 fReplaceCP;
00069 bool fLastWasCR;
00070 };
00071
00072
00073 #pragma mark -
00074 #pragma mark * ZStrimW_CRLFInsert
00075
00077
00078 class ZStrimW_CRLFInsert : public ZStrimW_NativeUTF32
00079 {
00080 public:
00081 ZStrimW_CRLFInsert(const ZStrimW& iStrimSink);
00082
00083 virtual void Imp_WriteUTF32(const UTF32* iSource, size_t iCountCU, size_t* oCountCU);
00084
00085 private:
00086 const ZStrimW& fStrimSink;
00087 bool fLastWasCR;
00088 };
00089
00090
00091 #endif // __ZStrim_CRLF__