mirror of
https://github.com/unidoc/unioffice.git
synced 2025-04-25 13:48:53 +08:00
12 lines
5.8 KiB
Go
12 lines
5.8 KiB
Go
//
|
|
// Copyright 2020 FoxyUtils ehf. All rights reserved.
|
|
//
|
|
// This is a commercial product and requires a license to operate.
|
|
// A trial license can be obtained at https://unidoc.io
|
|
//
|
|
// DO NOT EDIT: generated by unitwist Go source code obfuscator.
|
|
//
|
|
// Use of this source code is governed by the UniDoc End User License Agreement
|
|
// terms that can be accessed at https://unidoc.io/eula/
|
|
|
|
package rw ;import (_c "bytes";_f "encoding/binary";_gf "errors";_gc "fmt";_ac "io";_a "io/ioutil";_e "reflect";);type Reader struct{*_c .Reader };func (_fg *Writer )WriteTo (wTo _ac .Writer )(_ffd int64 ,_ffe error ){if _bca :=_fg .Len ();_bca > 0{_bbf ,_ae :=wTo .Write (_fg ._ege [_fg ._gfb :]);if _bbf > _bca {return 0,_gf .New ("\u0072\u0077\u002e\u0057\u0072\u0069\u0074\u0065\u0072\u002e\u0057\u0072\u0069\u0074\u0065\u0054\u006f\u003a\u0020\u0069\u006e\u0076\u0061\u006ci\u0064\u0020\u0057\u0072\u0069t\u0065\u0020c\u006f\u0075\u006e\u0074");};_fg ._gfb +=_bbf ;_ffd =int64 (_bbf );if _ae !=nil {return _ffd ,_ae ;};if _bbf !=_bca {return _ffd ,_ac .ErrShortWrite ;};};_fg .reset ();return _ffd ,nil ;};func (_bb *Writer )Cap ()int {return cap (_bb ._ege )};const _fag =int (^uint (0)>>1);func (_cd *Reader )ReadStringProperty (n uint32 )(string ,error ){if _eg :=_cd .align (4);_eg !=nil {return "",_eg ;};_fa :=make ([]byte ,n );if _dc :=_f .Read (_cd ,_f .LittleEndian ,&_fa );_dc !=nil {return "",_dc ;};return string (_fa ),nil ;};func PushLeftUI64 (v uint64 ,flag bool )uint64 {v >>=1;if flag {v |=1<<63;};return v ;};func (_ab *Writer )AlignLength (alignTo int )error {_ag :=_ab .Len ()%alignTo ;if _ag > 0{_ ,_dff :=_ab .Write (make ([]byte ,alignTo -_ag ));if _dff !=nil {return _dff ;};};return nil ;};func (_ga *Reader )skip (_b int )error {_ ,_d :=_ac .CopyN (_a .Discard ,_ga ,int64 (_b ));if _d !=nil {return _d ;};return nil ;};func _cf (_gce int )[]byte {defer func (){if recover ()!=nil {panic (_bea );};}();return make ([]byte ,_gce );};func (_fe *Writer )FillWithByte (fillSize int ,b byte )error {for _ffc :=0;_ffc < fillSize ;_ffc ++{if _cab :=_fe .WritePropertyNoAlign (b );_cab !=nil {return _cab ;};};return nil ;};func (_dfb *Writer )curPos ()int {return int (_dfb .Cap ())-_dfb .Len ()};func (_cgd *Writer )Len ()int {return len (_cgd ._ege )-_cgd ._gfb };func PopRightUI32 (v uint32 )(bool ,uint32 ){return (v &uint32 (1))==1,v >>1};func (_de *Writer )WriteStringProperty (s string )error {_de .align (4);_gcf :=[]byte (s );if _ef :=_f .Write (_de ,_f .LittleEndian ,&_gcf );_ef !=nil {return _ef ;};return nil ;};func (_dcg *Writer )tryGrowByReslice (_ca int )(int ,bool ){if _fc :=len (_dcg ._ege );_ca <=cap (_dcg ._ege )-_fc {_dcg ._ege =_dcg ._ege [:_fc +_ca ];return _fc ,true ;};return 0,false ;};func (_af *Writer )Skip (n int )error {if n ==0{return nil ;};_ ,_cg :=_af .Write (make ([]byte ,n ));return _cg ;};func (_dd *Reader )align (_ff int )error {return _dd .skip ((_ff -_dd .curPos ()%_ff )%_ff )};func (_ea *Reader )ReadPairProperty (p interface{})error {if _df :=_ea .align (4);_df !=nil {return _df ;};_cee :=_e .ValueOf (p );for _cee .Kind ()==_e .Ptr {_cee =_cee .Elem ();};if !_cee .IsValid (){return _gc .Errorf ("\u0076a\u006cu\u0065\u0020\u0069\u0073\u0020n\u006f\u0074 \u0076\u0061\u006c\u0069\u0064");};if _gfa :=_f .Read (_ea ,_f .LittleEndian ,p );_gfa !=nil {return _gfa ;};return nil ;};func (_cdd *Writer )Write (p []byte )(_acf int ,_ede error ){_ddce ,_dba :=_cdd .tryGrowByReslice (len (p ));if !_dba {var _ad error ;_ddce ,_ad =_cdd .grow (len (p ));if _ad !=nil {return 0,_ad ;};};return copy (_cdd ._ege [_ddce :],p ),nil ;};func PopRightUI64 (v uint64 )(bool ,uint64 ){return (v &uint64 (1))==1,v >>1};func (_da *Writer )WritePropertyNoAlign (a interface{})error {if _cc :=_f .Write (_da ,_f .LittleEndian ,a );_cc !=nil {return _cc ;};return nil ;};func NewReader (b []byte )(*Reader ,error ){return &Reader {_c .NewReader (b )},nil };func (_aa *Writer )align (_dbg int )error {return _aa .Skip ((_dbg -(_aa .Len ())%_dbg )%_dbg )};func (_ge *Writer )grow (_cec int )(int ,error ){_agg :=_ge .Len ();if _agg ==0&&_ge ._gfb !=0{_ge .reset ();};if _cb ,_efg :=_ge .tryGrowByReslice (_cec );_efg {return _cb ,nil ;};if _ge ._ege ==nil &&_cec <=_cca {_ge ._ege =make ([]byte ,_cec ,_cca );return 0,nil ;};_bd :=cap (_ge ._ege );if _cec <=_bd /2-_agg {copy (_ge ._ege ,_ge ._ege [_ge ._gfb :]);}else if _bd > _fag -_bd -_cec {return 0,_bea ;}else {_ebb :=_cf (2*_bd +_cec );copy (_ebb ,_ge ._ege [_ge ._gfb :]);_ge ._ege =_ebb ;};_ge ._gfb =0;_ge ._ege =_ge ._ege [:_agg +_cec ];return _agg ,nil ;};func NewWriter ()*Writer {return &Writer {_ege :[]byte {}}};func (_ed *Reader )curPos ()int {return int (_ed .Size ())-_ed .Len ()};func (_gfg *Writer )reset (){_gfg ._ege =_gfg ._ege [:0];_gfg ._gfb =0};func (_eef *Writer )WriteByteAt (b byte ,off int )error {if off >=len (_eef ._ege ){return _gf .New ("\u004f\u0075\u0074\u0020\u006f\u0066\u0020\u0062\u006f\u0075\u006e\u0064\u0073");};_eef ._ege [off ]=b ;return nil ;};const _cca =64;func (_eb *Writer )WriteProperty (a interface{})error {if _cea :=_eb .align (int (_e .TypeOf (a ).Size ()));_cea !=nil {return _cea ;};return _eb .WritePropertyNoAlign (a );};func (_ee *Reader )ReadProperty (a interface{})error {_ce :=_e .ValueOf (a );for _ce .Kind ()==_e .Ptr {_ce =_ce .Elem ();};if !_ce .IsValid (){return _gc .Errorf ("\u0076a\u006cu\u0065\u0020\u0069\u0073\u0020n\u006f\u0074 \u0076\u0061\u006c\u0069\u0064");};if _ddc :=_ee .align (int (_ce .Type ().Size ()));_ddc !=nil {return _ddc ;};if _be :=_f .Read (_ee ,_f .LittleEndian ,a );_be !=nil {return _be ;};return nil ;};func PushLeftUI32 (v uint32 ,flag bool )uint32 {v >>=1;if flag {v |=1<<31;};return v ;};type Writer struct{_ege []byte ;_gfb int ;};func (_age *Writer )Bytes ()[]byte {return _age ._ege };var _bea =_gf .New ("r\u0077.\u0057\u0072\u0069\u0074\u0065\u0072\u003a\u0020t\u006f\u006f\u0020\u006car\u0067\u0065"); |