github.com/xiyichan/dm8@v0.0.0-20211213021639-be727be3e136/e.go (about)

     1  /*
     2   * Copyright (c) 2000-2018, 达梦数据库有限公司.
     3   * All rights reserved.
     4   */
     5  package dm
     6  
     7  import (
     8  	"bytes"
     9  	"golang.org/x/text/encoding"
    10  	"golang.org/x/text/encoding/ianaindex"
    11  	"golang.org/x/text/transform"
    12  	"io"
    13  	"io/ioutil"
    14  	"math"
    15  )
    16  
    17  type dm_build_598 struct{}
    18  
    19  var Dm_build_599 = &dm_build_598{}
    20  
    21  func (Dm_build_601 *dm_build_598) Dm_build_600(dm_build_602 []byte, dm_build_603 int, dm_build_604 byte) int {
    22  	dm_build_602[dm_build_603] = dm_build_604
    23  	return 1
    24  }
    25  
    26  func (Dm_build_606 *dm_build_598) Dm_build_605(dm_build_607 []byte, dm_build_608 int, dm_build_609 int8) int {
    27  	dm_build_607[dm_build_608] = byte(dm_build_609)
    28  	return 1
    29  }
    30  
    31  func (Dm_build_611 *dm_build_598) Dm_build_610(dm_build_612 []byte, dm_build_613 int, dm_build_614 int16) int {
    32  	dm_build_612[dm_build_613] = byte(dm_build_614)
    33  	dm_build_613++
    34  	dm_build_612[dm_build_613] = byte(dm_build_614 >> 8)
    35  	return 2
    36  }
    37  
    38  func (Dm_build_616 *dm_build_598) Dm_build_615(dm_build_617 []byte, dm_build_618 int, dm_build_619 int32) int {
    39  	dm_build_617[dm_build_618] = byte(dm_build_619)
    40  	dm_build_618++
    41  	dm_build_617[dm_build_618] = byte(dm_build_619 >> 8)
    42  	dm_build_618++
    43  	dm_build_617[dm_build_618] = byte(dm_build_619 >> 16)
    44  	dm_build_618++
    45  	dm_build_617[dm_build_618] = byte(dm_build_619 >> 24)
    46  	dm_build_618++
    47  	return 4
    48  }
    49  
    50  func (Dm_build_621 *dm_build_598) Dm_build_620(dm_build_622 []byte, dm_build_623 int, dm_build_624 int64) int {
    51  	dm_build_622[dm_build_623] = byte(dm_build_624)
    52  	dm_build_623++
    53  	dm_build_622[dm_build_623] = byte(dm_build_624 >> 8)
    54  	dm_build_623++
    55  	dm_build_622[dm_build_623] = byte(dm_build_624 >> 16)
    56  	dm_build_623++
    57  	dm_build_622[dm_build_623] = byte(dm_build_624 >> 24)
    58  	dm_build_623++
    59  	dm_build_622[dm_build_623] = byte(dm_build_624 >> 32)
    60  	dm_build_623++
    61  	dm_build_622[dm_build_623] = byte(dm_build_624 >> 40)
    62  	dm_build_623++
    63  	dm_build_622[dm_build_623] = byte(dm_build_624 >> 48)
    64  	dm_build_623++
    65  	dm_build_622[dm_build_623] = byte(dm_build_624 >> 56)
    66  	return 8
    67  }
    68  
    69  func (Dm_build_626 *dm_build_598) Dm_build_625(dm_build_627 []byte, dm_build_628 int, dm_build_629 float32) int {
    70  	return Dm_build_626.Dm_build_645(dm_build_627, dm_build_628, math.Float32bits(dm_build_629))
    71  }
    72  
    73  func (Dm_build_631 *dm_build_598) Dm_build_630(dm_build_632 []byte, dm_build_633 int, dm_build_634 float64) int {
    74  	return Dm_build_631.Dm_build_650(dm_build_632, dm_build_633, math.Float64bits(dm_build_634))
    75  }
    76  
    77  func (Dm_build_636 *dm_build_598) Dm_build_635(dm_build_637 []byte, dm_build_638 int, dm_build_639 uint8) int {
    78  	dm_build_637[dm_build_638] = byte(dm_build_639)
    79  	return 1
    80  }
    81  
    82  func (Dm_build_641 *dm_build_598) Dm_build_640(dm_build_642 []byte, dm_build_643 int, dm_build_644 uint16) int {
    83  	dm_build_642[dm_build_643] = byte(dm_build_644)
    84  	dm_build_643++
    85  	dm_build_642[dm_build_643] = byte(dm_build_644 >> 8)
    86  	return 2
    87  }
    88  
    89  func (Dm_build_646 *dm_build_598) Dm_build_645(dm_build_647 []byte, dm_build_648 int, dm_build_649 uint32) int {
    90  	dm_build_647[dm_build_648] = byte(dm_build_649)
    91  	dm_build_648++
    92  	dm_build_647[dm_build_648] = byte(dm_build_649 >> 8)
    93  	dm_build_648++
    94  	dm_build_647[dm_build_648] = byte(dm_build_649 >> 16)
    95  	dm_build_648++
    96  	dm_build_647[dm_build_648] = byte(dm_build_649 >> 24)
    97  	return 3
    98  }
    99  
   100  func (Dm_build_651 *dm_build_598) Dm_build_650(dm_build_652 []byte, dm_build_653 int, dm_build_654 uint64) int {
   101  	dm_build_652[dm_build_653] = byte(dm_build_654)
   102  	dm_build_653++
   103  	dm_build_652[dm_build_653] = byte(dm_build_654 >> 8)
   104  	dm_build_653++
   105  	dm_build_652[dm_build_653] = byte(dm_build_654 >> 16)
   106  	dm_build_653++
   107  	dm_build_652[dm_build_653] = byte(dm_build_654 >> 24)
   108  	dm_build_653++
   109  	dm_build_652[dm_build_653] = byte(dm_build_654 >> 32)
   110  	dm_build_653++
   111  	dm_build_652[dm_build_653] = byte(dm_build_654 >> 40)
   112  	dm_build_653++
   113  	dm_build_652[dm_build_653] = byte(dm_build_654 >> 48)
   114  	dm_build_653++
   115  	dm_build_652[dm_build_653] = byte(dm_build_654 >> 56)
   116  	return 3
   117  }
   118  
   119  func (Dm_build_656 *dm_build_598) Dm_build_655(dm_build_657 []byte, dm_build_658 int, dm_build_659 []byte, dm_build_660 int, dm_build_661 int) int {
   120  	copy(dm_build_657[dm_build_658:dm_build_658+dm_build_661], dm_build_659[dm_build_660:dm_build_660+dm_build_661])
   121  	return dm_build_661
   122  }
   123  
   124  func (Dm_build_663 *dm_build_598) Dm_build_662(dm_build_664 []byte, dm_build_665 int, dm_build_666 []byte, dm_build_667 int, dm_build_668 int) int {
   125  	dm_build_665 += Dm_build_663.Dm_build_645(dm_build_664, dm_build_665, uint32(dm_build_668))
   126  	return 4 + Dm_build_663.Dm_build_655(dm_build_664, dm_build_665, dm_build_666, dm_build_667, dm_build_668)
   127  }
   128  
   129  func (Dm_build_670 *dm_build_598) Dm_build_669(dm_build_671 []byte, dm_build_672 int, dm_build_673 []byte, dm_build_674 int, dm_build_675 int) int {
   130  	dm_build_672 += Dm_build_670.Dm_build_640(dm_build_671, dm_build_672, uint16(dm_build_675))
   131  	return 2 + Dm_build_670.Dm_build_655(dm_build_671, dm_build_672, dm_build_673, dm_build_674, dm_build_675)
   132  }
   133  
   134  func (Dm_build_677 *dm_build_598) Dm_build_676(dm_build_678 []byte, dm_build_679 int, dm_build_680 string, dm_build_681 string, dm_build_682 *DmConnection) int {
   135  	dm_build_683 := Dm_build_677.Dm_build_809(dm_build_680, dm_build_681, dm_build_682)
   136  	dm_build_679 += Dm_build_677.Dm_build_645(dm_build_678, dm_build_679, uint32(len(dm_build_683)))
   137  	return 4 + Dm_build_677.Dm_build_655(dm_build_678, dm_build_679, dm_build_683, 0, len(dm_build_683))
   138  }
   139  
   140  func (Dm_build_685 *dm_build_598) Dm_build_684(dm_build_686 []byte, dm_build_687 int, dm_build_688 string, dm_build_689 string, dm_build_690 *DmConnection) int {
   141  	dm_build_691 := Dm_build_685.Dm_build_809(dm_build_688, dm_build_689, dm_build_690)
   142  
   143  	dm_build_687 += Dm_build_685.Dm_build_640(dm_build_686, dm_build_687, uint16(len(dm_build_691)))
   144  	return 2 + Dm_build_685.Dm_build_655(dm_build_686, dm_build_687, dm_build_691, 0, len(dm_build_691))
   145  }
   146  
   147  func (Dm_build_693 *dm_build_598) Dm_build_692(dm_build_694 []byte, dm_build_695 int) byte {
   148  	return dm_build_694[dm_build_695]
   149  }
   150  
   151  func (Dm_build_697 *dm_build_598) Dm_build_696(dm_build_698 []byte, dm_build_699 int) int16 {
   152  	var dm_build_700 int16
   153  	dm_build_700 = int16(dm_build_698[dm_build_699] & 0xff)
   154  	dm_build_699++
   155  	dm_build_700 |= int16(dm_build_698[dm_build_699]&0xff) << 8
   156  	return dm_build_700
   157  }
   158  
   159  func (Dm_build_702 *dm_build_598) Dm_build_701(dm_build_703 []byte, dm_build_704 int) int32 {
   160  	var dm_build_705 int32
   161  	dm_build_705 = int32(dm_build_703[dm_build_704] & 0xff)
   162  	dm_build_704++
   163  	dm_build_705 |= int32(dm_build_703[dm_build_704]&0xff) << 8
   164  	dm_build_704++
   165  	dm_build_705 |= int32(dm_build_703[dm_build_704]&0xff) << 16
   166  	dm_build_704++
   167  	dm_build_705 |= int32(dm_build_703[dm_build_704]&0xff) << 24
   168  	return dm_build_705
   169  }
   170  
   171  func (Dm_build_707 *dm_build_598) Dm_build_706(dm_build_708 []byte, dm_build_709 int) int64 {
   172  	var dm_build_710 int64
   173  	dm_build_710 = int64(dm_build_708[dm_build_709] & 0xff)
   174  	dm_build_709++
   175  	dm_build_710 |= int64(dm_build_708[dm_build_709]&0xff) << 8
   176  	dm_build_709++
   177  	dm_build_710 |= int64(dm_build_708[dm_build_709]&0xff) << 16
   178  	dm_build_709++
   179  	dm_build_710 |= int64(dm_build_708[dm_build_709]&0xff) << 24
   180  	dm_build_709++
   181  	dm_build_710 |= int64(dm_build_708[dm_build_709]&0xff) << 32
   182  	dm_build_709++
   183  	dm_build_710 |= int64(dm_build_708[dm_build_709]&0xff) << 40
   184  	dm_build_709++
   185  	dm_build_710 |= int64(dm_build_708[dm_build_709]&0xff) << 48
   186  	dm_build_709++
   187  	dm_build_710 |= int64(dm_build_708[dm_build_709]&0xff) << 56
   188  	return dm_build_710
   189  }
   190  
   191  func (Dm_build_712 *dm_build_598) Dm_build_711(dm_build_713 []byte, dm_build_714 int) float32 {
   192  	return math.Float32frombits(Dm_build_712.Dm_build_728(dm_build_713, dm_build_714))
   193  }
   194  
   195  func (Dm_build_716 *dm_build_598) Dm_build_715(dm_build_717 []byte, dm_build_718 int) float64 {
   196  	return math.Float64frombits(Dm_build_716.Dm_build_733(dm_build_717, dm_build_718))
   197  }
   198  
   199  func (Dm_build_720 *dm_build_598) Dm_build_719(dm_build_721 []byte, dm_build_722 int) uint8 {
   200  	return uint8(dm_build_721[dm_build_722] & 0xff)
   201  }
   202  
   203  func (Dm_build_724 *dm_build_598) Dm_build_723(dm_build_725 []byte, dm_build_726 int) uint16 {
   204  	var dm_build_727 uint16
   205  	dm_build_727 = uint16(dm_build_725[dm_build_726] & 0xff)
   206  	dm_build_726++
   207  	dm_build_727 |= uint16(dm_build_725[dm_build_726]&0xff) << 8
   208  	return dm_build_727
   209  }
   210  
   211  func (Dm_build_729 *dm_build_598) Dm_build_728(dm_build_730 []byte, dm_build_731 int) uint32 {
   212  	var dm_build_732 uint32
   213  	dm_build_732 = uint32(dm_build_730[dm_build_731] & 0xff)
   214  	dm_build_731++
   215  	dm_build_732 |= uint32(dm_build_730[dm_build_731]&0xff) << 8
   216  	dm_build_731++
   217  	dm_build_732 |= uint32(dm_build_730[dm_build_731]&0xff) << 16
   218  	dm_build_731++
   219  	dm_build_732 |= uint32(dm_build_730[dm_build_731]&0xff) << 24
   220  	return dm_build_732
   221  }
   222  
   223  func (Dm_build_734 *dm_build_598) Dm_build_733(dm_build_735 []byte, dm_build_736 int) uint64 {
   224  	var dm_build_737 uint64
   225  	dm_build_737 = uint64(dm_build_735[dm_build_736] & 0xff)
   226  	dm_build_736++
   227  	dm_build_737 |= uint64(dm_build_735[dm_build_736]&0xff) << 8
   228  	dm_build_736++
   229  	dm_build_737 |= uint64(dm_build_735[dm_build_736]&0xff) << 16
   230  	dm_build_736++
   231  	dm_build_737 |= uint64(dm_build_735[dm_build_736]&0xff) << 24
   232  	dm_build_736++
   233  	dm_build_737 |= uint64(dm_build_735[dm_build_736]&0xff) << 32
   234  	dm_build_736++
   235  	dm_build_737 |= uint64(dm_build_735[dm_build_736]&0xff) << 40
   236  	dm_build_736++
   237  	dm_build_737 |= uint64(dm_build_735[dm_build_736]&0xff) << 48
   238  	dm_build_736++
   239  	dm_build_737 |= uint64(dm_build_735[dm_build_736]&0xff) << 56
   240  	return dm_build_737
   241  }
   242  
   243  func (Dm_build_739 *dm_build_598) Dm_build_738(dm_build_740 []byte, dm_build_741 int) []byte {
   244  	dm_build_742 := Dm_build_739.Dm_build_728(dm_build_740, dm_build_741)
   245  	return dm_build_740[dm_build_741+4 : dm_build_741+4+int(dm_build_742)]
   246  
   247  }
   248  
   249  func (Dm_build_744 *dm_build_598) Dm_build_743(dm_build_745 []byte, dm_build_746 int) []byte {
   250  	dm_build_747 := Dm_build_744.Dm_build_723(dm_build_745, dm_build_746)
   251  	return dm_build_745[dm_build_746+2 : dm_build_746+2+int(dm_build_747)]
   252  
   253  }
   254  
   255  func (Dm_build_749 *dm_build_598) Dm_build_748(dm_build_750 []byte, dm_build_751 int, dm_build_752 int) []byte {
   256  	return dm_build_750[dm_build_751 : dm_build_751+dm_build_752]
   257  
   258  }
   259  
   260  func (Dm_build_754 *dm_build_598) Dm_build_753(dm_build_755 []byte, dm_build_756 int, dm_build_757 int, dm_build_758 string, dm_build_759 *DmConnection) string {
   261  	return Dm_build_754.Dm_build_846(dm_build_755[dm_build_756:dm_build_756+dm_build_757], dm_build_758, dm_build_759)
   262  }
   263  
   264  func (Dm_build_761 *dm_build_598) Dm_build_760(dm_build_762 []byte, dm_build_763 int, dm_build_764 string, dm_build_765 *DmConnection) string {
   265  	dm_build_766 := Dm_build_761.Dm_build_728(dm_build_762, dm_build_763)
   266  	dm_build_763 += 4
   267  	return Dm_build_761.Dm_build_753(dm_build_762, dm_build_763, int(dm_build_766), dm_build_764, dm_build_765)
   268  }
   269  
   270  func (Dm_build_768 *dm_build_598) Dm_build_767(dm_build_769 []byte, dm_build_770 int, dm_build_771 string, dm_build_772 *DmConnection) string {
   271  	dm_build_773 := Dm_build_768.Dm_build_723(dm_build_769, dm_build_770)
   272  	dm_build_770 += 2
   273  	return Dm_build_768.Dm_build_753(dm_build_769, dm_build_770, int(dm_build_773), dm_build_771, dm_build_772)
   274  }
   275  
   276  func (Dm_build_775 *dm_build_598) Dm_build_774(dm_build_776 byte) []byte {
   277  	return []byte{dm_build_776}
   278  }
   279  
   280  func (Dm_build_778 *dm_build_598) Dm_build_777(dm_build_779 int16) []byte {
   281  	return []byte{byte(dm_build_779), byte(dm_build_779 >> 8)}
   282  }
   283  
   284  func (Dm_build_781 *dm_build_598) Dm_build_780(dm_build_782 int32) []byte {
   285  	return []byte{byte(dm_build_782), byte(dm_build_782 >> 8), byte(dm_build_782 >> 16), byte(dm_build_782 >> 24)}
   286  }
   287  
   288  func (Dm_build_784 *dm_build_598) Dm_build_783(dm_build_785 int64) []byte {
   289  	return []byte{byte(dm_build_785), byte(dm_build_785 >> 8), byte(dm_build_785 >> 16), byte(dm_build_785 >> 24), byte(dm_build_785 >> 32),
   290  		byte(dm_build_785 >> 40), byte(dm_build_785 >> 48), byte(dm_build_785 >> 56)}
   291  }
   292  
   293  func (Dm_build_787 *dm_build_598) Dm_build_786(dm_build_788 float32) []byte {
   294  	return Dm_build_787.Dm_build_798(math.Float32bits(dm_build_788))
   295  }
   296  
   297  func (Dm_build_790 *dm_build_598) Dm_build_789(dm_build_791 float64) []byte {
   298  	return Dm_build_790.Dm_build_801(math.Float64bits(dm_build_791))
   299  }
   300  
   301  func (Dm_build_793 *dm_build_598) Dm_build_792(dm_build_794 uint8) []byte {
   302  	return []byte{byte(dm_build_794)}
   303  }
   304  
   305  func (Dm_build_796 *dm_build_598) Dm_build_795(dm_build_797 uint16) []byte {
   306  	return []byte{byte(dm_build_797), byte(dm_build_797 >> 8)}
   307  }
   308  
   309  func (Dm_build_799 *dm_build_598) Dm_build_798(dm_build_800 uint32) []byte {
   310  	return []byte{byte(dm_build_800), byte(dm_build_800 >> 8), byte(dm_build_800 >> 16), byte(dm_build_800 >> 24)}
   311  }
   312  
   313  func (Dm_build_802 *dm_build_598) Dm_build_801(dm_build_803 uint64) []byte {
   314  	return []byte{byte(dm_build_803), byte(dm_build_803 >> 8), byte(dm_build_803 >> 16), byte(dm_build_803 >> 24), byte(dm_build_803 >> 32), byte(dm_build_803 >> 40), byte(dm_build_803 >> 48), byte(dm_build_803 >> 56)}
   315  }
   316  
   317  func (Dm_build_805 *dm_build_598) Dm_build_804(dm_build_806 []byte, dm_build_807 string, dm_build_808 *DmConnection) []byte {
   318  	if dm_build_807 == "UTF-8" {
   319  		return dm_build_806
   320  	}
   321  
   322  	if dm_build_808 == nil {
   323  		if e := dm_build_851(dm_build_807); e != nil {
   324  			tmp, err := ioutil.ReadAll(
   325  				transform.NewReader(bytes.NewReader(dm_build_806), e.NewEncoder()),
   326  			)
   327  			if err != nil {
   328  				panic("UTF8 To Charset error!")
   329  			}
   330  
   331  			return tmp
   332  		}
   333  
   334  		panic("Unsupported Charset!")
   335  	}
   336  
   337  	if dm_build_808.encodeBuffer == nil {
   338  		dm_build_808.encodeBuffer = bytes.NewBuffer(nil)
   339  		dm_build_808.encode = dm_build_851(dm_build_808.getServerEncoding())
   340  		dm_build_808.transformReaderDst = make([]byte, 4096)
   341  		dm_build_808.transformReaderSrc = make([]byte, 4096)
   342  	}
   343  
   344  	if e := dm_build_808.encode; e != nil {
   345  
   346  		dm_build_808.encodeBuffer.Reset()
   347  
   348  		n, err := dm_build_808.encodeBuffer.ReadFrom(
   349  			Dm_build_865(bytes.NewReader(dm_build_806), e.NewEncoder(), dm_build_808.transformReaderDst, dm_build_808.transformReaderSrc),
   350  		)
   351  		if err != nil {
   352  			panic("UTF8 To Charset error!")
   353  		}
   354  		var tmp = make([]byte, n)
   355  		if _, err = dm_build_808.encodeBuffer.Read(tmp); err != nil {
   356  			panic("UTF8 To Charset error!")
   357  		}
   358  		return tmp
   359  	}
   360  
   361  	panic("Unsupported Charset!")
   362  }
   363  
   364  func (Dm_build_810 *dm_build_598) Dm_build_809(dm_build_811 string, dm_build_812 string, dm_build_813 *DmConnection) []byte {
   365  	return Dm_build_810.Dm_build_804([]byte(dm_build_811), dm_build_812, dm_build_813)
   366  }
   367  
   368  func (Dm_build_815 *dm_build_598) Dm_build_814(dm_build_816 []byte) byte {
   369  	return Dm_build_815.Dm_build_692(dm_build_816, 0)
   370  }
   371  
   372  func (Dm_build_818 *dm_build_598) Dm_build_817(dm_build_819 []byte) int16 {
   373  	return Dm_build_818.Dm_build_696(dm_build_819, 0)
   374  }
   375  
   376  func (Dm_build_821 *dm_build_598) Dm_build_820(dm_build_822 []byte) int32 {
   377  	return Dm_build_821.Dm_build_701(dm_build_822, 0)
   378  }
   379  
   380  func (Dm_build_824 *dm_build_598) Dm_build_823(dm_build_825 []byte) int64 {
   381  	return Dm_build_824.Dm_build_706(dm_build_825, 0)
   382  }
   383  
   384  func (Dm_build_827 *dm_build_598) Dm_build_826(dm_build_828 []byte) float32 {
   385  	return Dm_build_827.Dm_build_711(dm_build_828, 0)
   386  }
   387  
   388  func (Dm_build_830 *dm_build_598) Dm_build_829(dm_build_831 []byte) float64 {
   389  	return Dm_build_830.Dm_build_715(dm_build_831, 0)
   390  }
   391  
   392  func (Dm_build_833 *dm_build_598) Dm_build_832(dm_build_834 []byte) uint8 {
   393  	return Dm_build_833.Dm_build_719(dm_build_834, 0)
   394  }
   395  
   396  func (Dm_build_836 *dm_build_598) Dm_build_835(dm_build_837 []byte) uint16 {
   397  	return Dm_build_836.Dm_build_723(dm_build_837, 0)
   398  }
   399  
   400  func (Dm_build_839 *dm_build_598) Dm_build_838(dm_build_840 []byte) uint32 {
   401  	return Dm_build_839.Dm_build_728(dm_build_840, 0)
   402  }
   403  
   404  func (Dm_build_842 *dm_build_598) Dm_build_841(dm_build_843 []byte, dm_build_844 string, dm_build_845 *DmConnection) []byte {
   405  	if dm_build_844 == "UTF-8" {
   406  		return dm_build_843
   407  	}
   408  
   409  	if dm_build_845 == nil {
   410  		if e := dm_build_851(dm_build_844); e != nil {
   411  
   412  			tmp, err := ioutil.ReadAll(
   413  				transform.NewReader(bytes.NewReader(dm_build_843), e.NewDecoder()),
   414  			)
   415  			if err != nil {
   416  
   417  				panic("Charset To UTF8 error!")
   418  			}
   419  
   420  			return tmp
   421  		}
   422  
   423  		panic("Unsupported Charset!")
   424  	}
   425  
   426  	if dm_build_845.encodeBuffer == nil {
   427  		dm_build_845.encodeBuffer = bytes.NewBuffer(nil)
   428  		dm_build_845.encode = dm_build_851(dm_build_845.getServerEncoding())
   429  		dm_build_845.transformReaderDst = make([]byte, 4096)
   430  		dm_build_845.transformReaderSrc = make([]byte, 4096)
   431  	}
   432  
   433  	if e := dm_build_845.encode; e != nil {
   434  
   435  		dm_build_845.encodeBuffer.Reset()
   436  
   437  		n, err := dm_build_845.encodeBuffer.ReadFrom(
   438  			Dm_build_865(bytes.NewReader(dm_build_843), e.NewDecoder(), dm_build_845.transformReaderDst, dm_build_845.transformReaderSrc),
   439  		)
   440  		if err != nil {
   441  
   442  			panic("Charset To UTF8 error!")
   443  		}
   444  
   445  		return dm_build_845.encodeBuffer.Next(int(n))
   446  	}
   447  
   448  	panic("Unsupported Charset!")
   449  }
   450  
   451  func (Dm_build_847 *dm_build_598) Dm_build_846(dm_build_848 []byte, dm_build_849 string, dm_build_850 *DmConnection) string {
   452  	return string(Dm_build_847.Dm_build_841(dm_build_848, dm_build_849, dm_build_850))
   453  }
   454  
   455  func dm_build_851(dm_build_852 string) encoding.Encoding {
   456  	if e, err := ianaindex.MIB.Encoding(dm_build_852); err == nil && e != nil {
   457  		return e
   458  	}
   459  	return nil
   460  }
   461  
   462  type Dm_build_853 struct {
   463  	dm_build_854 io.Reader
   464  	dm_build_855 transform.Transformer
   465  	dm_build_856 error
   466  
   467  	dm_build_857               []byte
   468  	dm_build_858, dm_build_859 int
   469  
   470  	dm_build_860               []byte
   471  	dm_build_861, dm_build_862 int
   472  
   473  	dm_build_863 bool
   474  }
   475  
   476  const dm_build_864 = 4096
   477  
   478  func Dm_build_865(dm_build_866 io.Reader, dm_build_867 transform.Transformer, dm_build_868 []byte, dm_build_869 []byte) *Dm_build_853 {
   479  	dm_build_867.Reset()
   480  	return &Dm_build_853{
   481  		dm_build_854: dm_build_866,
   482  		dm_build_855: dm_build_867,
   483  		dm_build_857: dm_build_868,
   484  		dm_build_860: dm_build_869,
   485  	}
   486  }
   487  
   488  func (dm_build_871 *Dm_build_853) Read(dm_build_872 []byte) (int, error) {
   489  	dm_build_873, dm_build_874 := 0, error(nil)
   490  	for {
   491  
   492  		if dm_build_871.dm_build_858 != dm_build_871.dm_build_859 {
   493  			dm_build_873 = copy(dm_build_872, dm_build_871.dm_build_857[dm_build_871.dm_build_858:dm_build_871.dm_build_859])
   494  			dm_build_871.dm_build_858 += dm_build_873
   495  			if dm_build_871.dm_build_858 == dm_build_871.dm_build_859 && dm_build_871.dm_build_863 {
   496  				return dm_build_873, dm_build_871.dm_build_856
   497  			}
   498  			return dm_build_873, nil
   499  		} else if dm_build_871.dm_build_863 {
   500  			return 0, dm_build_871.dm_build_856
   501  		}
   502  
   503  		if dm_build_871.dm_build_861 != dm_build_871.dm_build_862 || dm_build_871.dm_build_856 != nil {
   504  			dm_build_871.dm_build_858 = 0
   505  			dm_build_871.dm_build_859, dm_build_873, dm_build_874 = dm_build_871.dm_build_855.Transform(dm_build_871.dm_build_857, dm_build_871.dm_build_860[dm_build_871.dm_build_861:dm_build_871.dm_build_862], dm_build_871.dm_build_856 == io.EOF)
   506  			dm_build_871.dm_build_861 += dm_build_873
   507  
   508  			switch {
   509  			case dm_build_874 == nil:
   510  				if dm_build_871.dm_build_861 != dm_build_871.dm_build_862 {
   511  					dm_build_871.dm_build_856 = nil
   512  				}
   513  
   514  				dm_build_871.dm_build_863 = dm_build_871.dm_build_856 != nil
   515  				continue
   516  			case dm_build_874 == transform.ErrShortDst && (dm_build_871.dm_build_859 != 0 || dm_build_873 != 0):
   517  
   518  				continue
   519  			case dm_build_874 == transform.ErrShortSrc && dm_build_871.dm_build_862-dm_build_871.dm_build_861 != len(dm_build_871.dm_build_860) && dm_build_871.dm_build_856 == nil:
   520  
   521  			default:
   522  				dm_build_871.dm_build_863 = true
   523  
   524  				if dm_build_871.dm_build_856 == nil || dm_build_871.dm_build_856 == io.EOF {
   525  					dm_build_871.dm_build_856 = dm_build_874
   526  				}
   527  				continue
   528  			}
   529  		}
   530  
   531  		if dm_build_871.dm_build_861 != 0 {
   532  			dm_build_871.dm_build_861, dm_build_871.dm_build_862 = 0, copy(dm_build_871.dm_build_860, dm_build_871.dm_build_860[dm_build_871.dm_build_861:dm_build_871.dm_build_862])
   533  		}
   534  		dm_build_873, dm_build_871.dm_build_856 = dm_build_871.dm_build_854.Read(dm_build_871.dm_build_860[dm_build_871.dm_build_862:])
   535  		dm_build_871.dm_build_862 += dm_build_873
   536  	}
   537  }