2023-04-15 17:27:31 +00:00

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 (_e "bytes";_ge "encoding/binary";_b "errors";_dd "fmt";_g "io";_a "io/ioutil";_d "reflect";);type Reader struct{*_e .Reader };func (_ce *Writer )Write (p []byte )(_cgb int ,_gebe error ){_ga ,_fde :=_ce .tryGrowByReslice (len (p ));if !_fde {var _ff error ;_ga ,_ff =_ce .grow (len (p ));if _ff !=nil {return 0,_ff ;};};return copy (_ce ._ed [_ga :],p ),nil ;};func (_ggf *Reader )ReadProperty (a interface{})error {_fd :=_d .ValueOf (a );for _fd .Kind ()==_d .Ptr {_fd =_fd .Elem ();};if !_fd .IsValid (){return _dd .Errorf ("\u0076a\u006cu\u0065\u0020\u0069\u0073\u0020n\u006f\u0074 \u0076\u0061\u006c\u0069\u0064");};if _geb :=_ggf .align (int (_fd .Type ().Size ()));_geb !=nil {return _geb ;};if _bg :=_ge .Read (_ggf ,_ge .LittleEndian ,a );_bg !=nil {return _bg ;};return nil ;};func PushLeftUI32 (v uint32 ,flag bool )uint32 {v >>=1;if flag {v |=1<<31;};return v ;};func (_ggb *Writer )WriteTo (wTo _g .Writer )(_gcg int64 ,_ggg error ){if _cd :=_ggb .Len ();_cd > 0{_bgb ,_bd :=wTo .Write (_ggb ._ed [_ggb ._de :]);if _bgb > _cd {return 0,_b .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");};_ggb ._de +=_bgb ;_gcg =int64 (_bgb );if _bd !=nil {return _gcg ,_bd ;};if _bgb !=_cd {return _gcg ,_g .ErrShortWrite ;};};_ggb .reset ();return _gcg ,nil ;};func (_ag *Writer )AlignLength (alignTo int )error {_bf :=_ag .Len ()%alignTo ;if _bf > 0{_ ,_def :=_ag .Write (make ([]byte ,alignTo -_bf ));if _def !=nil {return _def ;};};return nil ;};func (_gde *Writer )FillWithByte (fillSize int ,b byte )error {for _aba :=0;_aba < fillSize ;_aba ++{if _dcd :=_gde .WritePropertyNoAlign (b );_dcd !=nil {return _dcd ;};};return nil ;};var _da =_b .New ("r\u0077.\u0057\u0072\u0069\u0074\u0065\u0072\u003a\u0020t\u006f\u006f\u0020\u006car\u0067\u0065");func (_gg *Reader )skip (_gc int )error {_ ,_gd :=_g .CopyN (_a .Discard ,_gg ,int64 (_gc ));if _gd !=nil {return _gd ;};return nil ;};func (_edf *Writer )Cap ()int {return cap (_edf ._ed )};func PopRightUI64 (v uint64 )(bool ,uint64 ){return (v &uint64 (1))==1,v >>1};func (_c *Reader )align (_ggc int )error {return _c .skip ((_ggc -_c .curPos ()%_ggc )%_ggc )};func (_bb *Writer )Len ()int {return len (_bb ._ed )-_bb ._de };func (_dc *Writer )WritePropertyNoAlign (a interface{})error {if _gf :=_ge .Write (_dc ,_ge .LittleEndian ,a );_gf !=nil {return _gf ;};return nil ;};func (_dgc *Writer )align (_fa int )error {return _dgc .Skip ((_fa -(_dgc .Len ())%_fa )%_fa )};type Writer struct{_ed []byte ;_de int ;};func (_aa *Writer )WriteByteAt (b byte ,off int )error {if off >=len (_aa ._ed ){return _b .New ("\u004f\u0075\u0074\u0020\u006f\u0066\u0020\u0062\u006f\u0075\u006e\u0064\u0073");};_aa ._ed [off ]=b ;return nil ;};func _efe (_eg int )[]byte {defer func (){if recover ()!=nil {panic (_da );};}();return make ([]byte ,_eg );};func (_ad *Reader )ReadStringProperty (n uint32 )(string ,error ){if _ef :=_ad .align (4);_ef !=nil {return "",_ef ;};_ged :=make ([]byte ,n );if _afa :=_ge .Read (_ad ,_ge .LittleEndian ,&_ged );_afa !=nil {return "",_afa ;};return string (_ged ),nil ;};func PushLeftUI64 (v uint64 ,flag bool )uint64 {v >>=1;if flag {v |=1<<63;};return v ;};func (_fg *Reader )ReadPairProperty (p interface{})error {if _cg :=_fg .align (4);_cg !=nil {return _cg ;};_gebg :=_d .ValueOf (p );for _gebg .Kind ()==_d .Ptr {_gebg =_gebg .Elem ();};if !_gebg .IsValid (){return _dd .Errorf ("\u0076a\u006cu\u0065\u0020\u0069\u0073\u0020n\u006f\u0074 \u0076\u0061\u006c\u0069\u0064");};if _be :=_ge .Read (_fg ,_ge .LittleEndian ,p );_be !=nil {return _be ;};return nil ;};func (_af *Reader )curPos ()int {return int (_af .Size ())-_af .Len ()};func NewWriter ()*Writer {return &Writer {_ed :[]byte {}}};func (_ba *Writer )tryGrowByReslice (_fbd int )(int ,bool ){if _egf :=len (_ba ._ed );_fbd <=cap (_ba ._ed )-_egf {_ba ._ed =_ba ._ed [:_egf +_fbd ];return _egf ,true ;};return 0,false ;};func (_gea *Writer )Bytes ()[]byte {return _gea ._ed };func (_bee *Writer )WriteProperty (a interface{})error {if _ec :=_bee .align (int (_d .TypeOf (a ).Size ()));_ec !=nil {return _ec ;};return _bee .WritePropertyNoAlign (a );};func NewReader (b []byte )(*Reader ,error ){return &Reader {_e .NewReader (b )},nil };func PopRightUI32 (v uint32 )(bool ,uint32 ){return (v &uint32 (1))==1,v >>1};const _ecf =64;func (_ace *Writer )Skip (n int )error {if n ==0{return nil ;};_ ,_fb :=_ace .Write (make ([]byte ,n ));return _fb ;};func (_bgf *Writer )reset (){_bgf ._ed =_bgf ._ed [:0];_bgf ._de =0};func (_fda *Writer )WriteStringProperty (s string )error {_fda .align (4);_fc :=[]byte (s );if _dg :=_ge .Write (_fda ,_ge .LittleEndian ,&_fc );_dg !=nil {return _dg ;};return nil ;};func (_faa *Writer )grow (_gfd int )(int ,error ){_ab :=_faa .Len ();if _ab ==0&&_faa ._de !=0{_faa .reset ();};if _ecc ,_ega :=_faa .tryGrowByReslice (_gfd );_ega {return _ecc ,nil ;};if _faa ._ed ==nil &&_gfd <=_ecf {_faa ._ed =make ([]byte ,_gfd ,_ecf );return 0,nil ;};_gcd :=cap (_faa ._ed );if _gfd <=_gcd /2-_ab {copy (_faa ._ed ,_faa ._ed [_faa ._de :]);}else if _gcd > _dcf -_gcd -_gfd {return 0,_da ;}else {_ea :=_efe (2*_gcd +_gfd );copy (_ea ,_faa ._ed [_faa ._de :]);_faa ._ed =_ea ;};_faa ._de =0;_faa ._ed =_faa ._ed [:_ab +_gfd ];return _ab ,nil ;};const _dcf =int (^uint (0)>>1);func (_ca *Writer )curPos ()int {return int (_ca .Cap ())-_ca .Len ()};