gitee.com/runner.mei/dm@v0.0.0-20220207044607-a9ba0dc20bf7/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_622 struct{}
    18  
    19  var Dm_build_623 = &dm_build_622{}
    20  
    21  func (Dm_build_625 *dm_build_622) Dm_build_624(dm_build_626 []byte, dm_build_627 int, dm_build_628 byte) int {
    22  	dm_build_626[dm_build_627] = dm_build_628
    23  	return 1
    24  }
    25  
    26  func (Dm_build_630 *dm_build_622) Dm_build_629(dm_build_631 []byte, dm_build_632 int, dm_build_633 int8) int {
    27  	dm_build_631[dm_build_632] = byte(dm_build_633)
    28  	return 1
    29  }
    30  
    31  func (Dm_build_635 *dm_build_622) Dm_build_634(dm_build_636 []byte, dm_build_637 int, dm_build_638 int16) int {
    32  	dm_build_636[dm_build_637] = byte(dm_build_638)
    33  	dm_build_637++
    34  	dm_build_636[dm_build_637] = byte(dm_build_638 >> 8)
    35  	return 2
    36  }
    37  
    38  func (Dm_build_640 *dm_build_622) Dm_build_639(dm_build_641 []byte, dm_build_642 int, dm_build_643 int32) int {
    39  	dm_build_641[dm_build_642] = byte(dm_build_643)
    40  	dm_build_642++
    41  	dm_build_641[dm_build_642] = byte(dm_build_643 >> 8)
    42  	dm_build_642++
    43  	dm_build_641[dm_build_642] = byte(dm_build_643 >> 16)
    44  	dm_build_642++
    45  	dm_build_641[dm_build_642] = byte(dm_build_643 >> 24)
    46  	dm_build_642++
    47  	return 4
    48  }
    49  
    50  func (Dm_build_645 *dm_build_622) Dm_build_644(dm_build_646 []byte, dm_build_647 int, dm_build_648 int64) int {
    51  	dm_build_646[dm_build_647] = byte(dm_build_648)
    52  	dm_build_647++
    53  	dm_build_646[dm_build_647] = byte(dm_build_648 >> 8)
    54  	dm_build_647++
    55  	dm_build_646[dm_build_647] = byte(dm_build_648 >> 16)
    56  	dm_build_647++
    57  	dm_build_646[dm_build_647] = byte(dm_build_648 >> 24)
    58  	dm_build_647++
    59  	dm_build_646[dm_build_647] = byte(dm_build_648 >> 32)
    60  	dm_build_647++
    61  	dm_build_646[dm_build_647] = byte(dm_build_648 >> 40)
    62  	dm_build_647++
    63  	dm_build_646[dm_build_647] = byte(dm_build_648 >> 48)
    64  	dm_build_647++
    65  	dm_build_646[dm_build_647] = byte(dm_build_648 >> 56)
    66  	return 8
    67  }
    68  
    69  func (Dm_build_650 *dm_build_622) Dm_build_649(dm_build_651 []byte, dm_build_652 int, dm_build_653 float32) int {
    70  	return Dm_build_650.Dm_build_669(dm_build_651, dm_build_652, math.Float32bits(dm_build_653))
    71  }
    72  
    73  func (Dm_build_655 *dm_build_622) Dm_build_654(dm_build_656 []byte, dm_build_657 int, dm_build_658 float64) int {
    74  	return Dm_build_655.Dm_build_674(dm_build_656, dm_build_657, math.Float64bits(dm_build_658))
    75  }
    76  
    77  func (Dm_build_660 *dm_build_622) Dm_build_659(dm_build_661 []byte, dm_build_662 int, dm_build_663 uint8) int {
    78  	dm_build_661[dm_build_662] = byte(dm_build_663)
    79  	return 1
    80  }
    81  
    82  func (Dm_build_665 *dm_build_622) Dm_build_664(dm_build_666 []byte, dm_build_667 int, dm_build_668 uint16) int {
    83  	dm_build_666[dm_build_667] = byte(dm_build_668)
    84  	dm_build_667++
    85  	dm_build_666[dm_build_667] = byte(dm_build_668 >> 8)
    86  	return 2
    87  }
    88  
    89  func (Dm_build_670 *dm_build_622) Dm_build_669(dm_build_671 []byte, dm_build_672 int, dm_build_673 uint32) int {
    90  	dm_build_671[dm_build_672] = byte(dm_build_673)
    91  	dm_build_672++
    92  	dm_build_671[dm_build_672] = byte(dm_build_673 >> 8)
    93  	dm_build_672++
    94  	dm_build_671[dm_build_672] = byte(dm_build_673 >> 16)
    95  	dm_build_672++
    96  	dm_build_671[dm_build_672] = byte(dm_build_673 >> 24)
    97  	return 3
    98  }
    99  
   100  func (Dm_build_675 *dm_build_622) Dm_build_674(dm_build_676 []byte, dm_build_677 int, dm_build_678 uint64) int {
   101  	dm_build_676[dm_build_677] = byte(dm_build_678)
   102  	dm_build_677++
   103  	dm_build_676[dm_build_677] = byte(dm_build_678 >> 8)
   104  	dm_build_677++
   105  	dm_build_676[dm_build_677] = byte(dm_build_678 >> 16)
   106  	dm_build_677++
   107  	dm_build_676[dm_build_677] = byte(dm_build_678 >> 24)
   108  	dm_build_677++
   109  	dm_build_676[dm_build_677] = byte(dm_build_678 >> 32)
   110  	dm_build_677++
   111  	dm_build_676[dm_build_677] = byte(dm_build_678 >> 40)
   112  	dm_build_677++
   113  	dm_build_676[dm_build_677] = byte(dm_build_678 >> 48)
   114  	dm_build_677++
   115  	dm_build_676[dm_build_677] = byte(dm_build_678 >> 56)
   116  	return 3
   117  }
   118  
   119  func (Dm_build_680 *dm_build_622) Dm_build_679(dm_build_681 []byte, dm_build_682 int, dm_build_683 []byte, dm_build_684 int, dm_build_685 int) int {
   120  	copy(dm_build_681[dm_build_682:dm_build_682+dm_build_685], dm_build_683[dm_build_684:dm_build_684+dm_build_685])
   121  	return dm_build_685
   122  }
   123  
   124  func (Dm_build_687 *dm_build_622) Dm_build_686(dm_build_688 []byte, dm_build_689 int, dm_build_690 []byte, dm_build_691 int, dm_build_692 int) int {
   125  	dm_build_689 += Dm_build_687.Dm_build_669(dm_build_688, dm_build_689, uint32(dm_build_692))
   126  	return 4 + Dm_build_687.Dm_build_679(dm_build_688, dm_build_689, dm_build_690, dm_build_691, dm_build_692)
   127  }
   128  
   129  func (Dm_build_694 *dm_build_622) Dm_build_693(dm_build_695 []byte, dm_build_696 int, dm_build_697 []byte, dm_build_698 int, dm_build_699 int) int {
   130  	dm_build_696 += Dm_build_694.Dm_build_664(dm_build_695, dm_build_696, uint16(dm_build_699))
   131  	return 2 + Dm_build_694.Dm_build_679(dm_build_695, dm_build_696, dm_build_697, dm_build_698, dm_build_699)
   132  }
   133  
   134  func (Dm_build_701 *dm_build_622) Dm_build_700(dm_build_702 []byte, dm_build_703 int, dm_build_704 string, dm_build_705 string, dm_build_706 *DmConnection) int {
   135  	dm_build_707 := Dm_build_701.Dm_build_836(dm_build_704, dm_build_705, dm_build_706)
   136  	dm_build_703 += Dm_build_701.Dm_build_669(dm_build_702, dm_build_703, uint32(len(dm_build_707)))
   137  	return 4 + Dm_build_701.Dm_build_679(dm_build_702, dm_build_703, dm_build_707, 0, len(dm_build_707))
   138  }
   139  
   140  func (Dm_build_709 *dm_build_622) Dm_build_708(dm_build_710 []byte, dm_build_711 int, dm_build_712 string, dm_build_713 string, dm_build_714 *DmConnection) int {
   141  	dm_build_715 := Dm_build_709.Dm_build_836(dm_build_712, dm_build_713, dm_build_714)
   142  
   143  	dm_build_711 += Dm_build_709.Dm_build_664(dm_build_710, dm_build_711, uint16(len(dm_build_715)))
   144  	return 2 + Dm_build_709.Dm_build_679(dm_build_710, dm_build_711, dm_build_715, 0, len(dm_build_715))
   145  }
   146  
   147  func (Dm_build_717 *dm_build_622) Dm_build_716(dm_build_718 []byte, dm_build_719 int) byte {
   148  	return dm_build_718[dm_build_719]
   149  }
   150  
   151  func (Dm_build_721 *dm_build_622) Dm_build_720(dm_build_722 []byte, dm_build_723 int) int16 {
   152  	var dm_build_724 int16
   153  	dm_build_724 = int16(dm_build_722[dm_build_723] & 0xff)
   154  	dm_build_723++
   155  	dm_build_724 |= int16(dm_build_722[dm_build_723]&0xff) << 8
   156  	return dm_build_724
   157  }
   158  
   159  func (Dm_build_726 *dm_build_622) Dm_build_725(dm_build_727 []byte, dm_build_728 int) int32 {
   160  	var dm_build_729 int32
   161  	dm_build_729 = int32(dm_build_727[dm_build_728] & 0xff)
   162  	dm_build_728++
   163  	dm_build_729 |= int32(dm_build_727[dm_build_728]&0xff) << 8
   164  	dm_build_728++
   165  	dm_build_729 |= int32(dm_build_727[dm_build_728]&0xff) << 16
   166  	dm_build_728++
   167  	dm_build_729 |= int32(dm_build_727[dm_build_728]&0xff) << 24
   168  	return dm_build_729
   169  }
   170  
   171  func (Dm_build_731 *dm_build_622) Dm_build_730(dm_build_732 []byte, dm_build_733 int) int64 {
   172  	var dm_build_734 int64
   173  	dm_build_734 = int64(dm_build_732[dm_build_733] & 0xff)
   174  	dm_build_733++
   175  	dm_build_734 |= int64(dm_build_732[dm_build_733]&0xff) << 8
   176  	dm_build_733++
   177  	dm_build_734 |= int64(dm_build_732[dm_build_733]&0xff) << 16
   178  	dm_build_733++
   179  	dm_build_734 |= int64(dm_build_732[dm_build_733]&0xff) << 24
   180  	dm_build_733++
   181  	dm_build_734 |= int64(dm_build_732[dm_build_733]&0xff) << 32
   182  	dm_build_733++
   183  	dm_build_734 |= int64(dm_build_732[dm_build_733]&0xff) << 40
   184  	dm_build_733++
   185  	dm_build_734 |= int64(dm_build_732[dm_build_733]&0xff) << 48
   186  	dm_build_733++
   187  	dm_build_734 |= int64(dm_build_732[dm_build_733]&0xff) << 56
   188  	return dm_build_734
   189  }
   190  
   191  func (Dm_build_736 *dm_build_622) Dm_build_735(dm_build_737 []byte, dm_build_738 int) float32 {
   192  	return math.Float32frombits(Dm_build_736.Dm_build_752(dm_build_737, dm_build_738))
   193  }
   194  
   195  func (Dm_build_740 *dm_build_622) Dm_build_739(dm_build_741 []byte, dm_build_742 int) float64 {
   196  	return math.Float64frombits(Dm_build_740.Dm_build_757(dm_build_741, dm_build_742))
   197  }
   198  
   199  func (Dm_build_744 *dm_build_622) Dm_build_743(dm_build_745 []byte, dm_build_746 int) uint8 {
   200  	return uint8(dm_build_745[dm_build_746] & 0xff)
   201  }
   202  
   203  func (Dm_build_748 *dm_build_622) Dm_build_747(dm_build_749 []byte, dm_build_750 int) uint16 {
   204  	var dm_build_751 uint16
   205  	dm_build_751 = uint16(dm_build_749[dm_build_750] & 0xff)
   206  	dm_build_750++
   207  	dm_build_751 |= uint16(dm_build_749[dm_build_750]&0xff) << 8
   208  	return dm_build_751
   209  }
   210  
   211  func (Dm_build_753 *dm_build_622) Dm_build_752(dm_build_754 []byte, dm_build_755 int) uint32 {
   212  	var dm_build_756 uint32
   213  	dm_build_756 = uint32(dm_build_754[dm_build_755] & 0xff)
   214  	dm_build_755++
   215  	dm_build_756 |= uint32(dm_build_754[dm_build_755]&0xff) << 8
   216  	dm_build_755++
   217  	dm_build_756 |= uint32(dm_build_754[dm_build_755]&0xff) << 16
   218  	dm_build_755++
   219  	dm_build_756 |= uint32(dm_build_754[dm_build_755]&0xff) << 24
   220  	return dm_build_756
   221  }
   222  
   223  func (Dm_build_758 *dm_build_622) Dm_build_757(dm_build_759 []byte, dm_build_760 int) uint64 {
   224  	var dm_build_761 uint64
   225  	dm_build_761 = uint64(dm_build_759[dm_build_760] & 0xff)
   226  	dm_build_760++
   227  	dm_build_761 |= uint64(dm_build_759[dm_build_760]&0xff) << 8
   228  	dm_build_760++
   229  	dm_build_761 |= uint64(dm_build_759[dm_build_760]&0xff) << 16
   230  	dm_build_760++
   231  	dm_build_761 |= uint64(dm_build_759[dm_build_760]&0xff) << 24
   232  	dm_build_760++
   233  	dm_build_761 |= uint64(dm_build_759[dm_build_760]&0xff) << 32
   234  	dm_build_760++
   235  	dm_build_761 |= uint64(dm_build_759[dm_build_760]&0xff) << 40
   236  	dm_build_760++
   237  	dm_build_761 |= uint64(dm_build_759[dm_build_760]&0xff) << 48
   238  	dm_build_760++
   239  	dm_build_761 |= uint64(dm_build_759[dm_build_760]&0xff) << 56
   240  	return dm_build_761
   241  }
   242  
   243  func (Dm_build_763 *dm_build_622) Dm_build_762(dm_build_764 []byte, dm_build_765 int) []byte {
   244  	dm_build_766 := Dm_build_763.Dm_build_752(dm_build_764, dm_build_765)
   245  
   246  	dm_build_767 := make([]byte, dm_build_766)
   247  	copy(dm_build_767[:int(dm_build_766)], dm_build_764[dm_build_765+4:dm_build_765+4+int(dm_build_766)])
   248  	return dm_build_767
   249  }
   250  
   251  func (Dm_build_769 *dm_build_622) Dm_build_768(dm_build_770 []byte, dm_build_771 int) []byte {
   252  	dm_build_772 := Dm_build_769.Dm_build_747(dm_build_770, dm_build_771)
   253  
   254  	dm_build_773 := make([]byte, dm_build_772)
   255  	copy(dm_build_773[:int(dm_build_772)], dm_build_770[dm_build_771+2:dm_build_771+2+int(dm_build_772)])
   256  	return dm_build_773
   257  }
   258  
   259  func (Dm_build_775 *dm_build_622) Dm_build_774(dm_build_776 []byte, dm_build_777 int, dm_build_778 int) []byte {
   260  
   261  	dm_build_779 := make([]byte, dm_build_778)
   262  	copy(dm_build_779[:dm_build_778], dm_build_776[dm_build_777:dm_build_777+dm_build_778])
   263  	return dm_build_779
   264  }
   265  
   266  func (Dm_build_781 *dm_build_622) Dm_build_780(dm_build_782 []byte, dm_build_783 int, dm_build_784 int, dm_build_785 string, dm_build_786 *DmConnection) string {
   267  	return Dm_build_781.Dm_build_873(dm_build_782[dm_build_783:dm_build_783+dm_build_784], dm_build_785, dm_build_786)
   268  }
   269  
   270  func (Dm_build_788 *dm_build_622) Dm_build_787(dm_build_789 []byte, dm_build_790 int, dm_build_791 string, dm_build_792 *DmConnection) string {
   271  	dm_build_793 := Dm_build_788.Dm_build_752(dm_build_789, dm_build_790)
   272  	dm_build_790 += 4
   273  	return Dm_build_788.Dm_build_780(dm_build_789, dm_build_790, int(dm_build_793), dm_build_791, dm_build_792)
   274  }
   275  
   276  func (Dm_build_795 *dm_build_622) Dm_build_794(dm_build_796 []byte, dm_build_797 int, dm_build_798 string, dm_build_799 *DmConnection) string {
   277  	dm_build_800 := Dm_build_795.Dm_build_747(dm_build_796, dm_build_797)
   278  	dm_build_797 += 2
   279  	return Dm_build_795.Dm_build_780(dm_build_796, dm_build_797, int(dm_build_800), dm_build_798, dm_build_799)
   280  }
   281  
   282  func (Dm_build_802 *dm_build_622) Dm_build_801(dm_build_803 byte) []byte {
   283  	return []byte{dm_build_803}
   284  }
   285  
   286  func (Dm_build_805 *dm_build_622) Dm_build_804(dm_build_806 int16) []byte {
   287  	return []byte{byte(dm_build_806), byte(dm_build_806 >> 8)}
   288  }
   289  
   290  func (Dm_build_808 *dm_build_622) Dm_build_807(dm_build_809 int32) []byte {
   291  	return []byte{byte(dm_build_809), byte(dm_build_809 >> 8), byte(dm_build_809 >> 16), byte(dm_build_809 >> 24)}
   292  }
   293  
   294  func (Dm_build_811 *dm_build_622) Dm_build_810(dm_build_812 int64) []byte {
   295  	return []byte{byte(dm_build_812), byte(dm_build_812 >> 8), byte(dm_build_812 >> 16), byte(dm_build_812 >> 24), byte(dm_build_812 >> 32),
   296  		byte(dm_build_812 >> 40), byte(dm_build_812 >> 48), byte(dm_build_812 >> 56)}
   297  }
   298  
   299  func (Dm_build_814 *dm_build_622) Dm_build_813(dm_build_815 float32) []byte {
   300  	return Dm_build_814.Dm_build_825(math.Float32bits(dm_build_815))
   301  }
   302  
   303  func (Dm_build_817 *dm_build_622) Dm_build_816(dm_build_818 float64) []byte {
   304  	return Dm_build_817.Dm_build_828(math.Float64bits(dm_build_818))
   305  }
   306  
   307  func (Dm_build_820 *dm_build_622) Dm_build_819(dm_build_821 uint8) []byte {
   308  	return []byte{byte(dm_build_821)}
   309  }
   310  
   311  func (Dm_build_823 *dm_build_622) Dm_build_822(dm_build_824 uint16) []byte {
   312  	return []byte{byte(dm_build_824), byte(dm_build_824 >> 8)}
   313  }
   314  
   315  func (Dm_build_826 *dm_build_622) Dm_build_825(dm_build_827 uint32) []byte {
   316  	return []byte{byte(dm_build_827), byte(dm_build_827 >> 8), byte(dm_build_827 >> 16), byte(dm_build_827 >> 24)}
   317  }
   318  
   319  func (Dm_build_829 *dm_build_622) Dm_build_828(dm_build_830 uint64) []byte {
   320  	return []byte{byte(dm_build_830), byte(dm_build_830 >> 8), byte(dm_build_830 >> 16), byte(dm_build_830 >> 24), byte(dm_build_830 >> 32), byte(dm_build_830 >> 40), byte(dm_build_830 >> 48), byte(dm_build_830 >> 56)}
   321  }
   322  
   323  func (Dm_build_832 *dm_build_622) Dm_build_831(dm_build_833 []byte, dm_build_834 string, dm_build_835 *DmConnection) []byte {
   324  	if dm_build_834 == "UTF-8" {
   325  		return dm_build_833
   326  	}
   327  
   328  	if dm_build_835 == nil {
   329  		if e := dm_build_878(dm_build_834); e != nil {
   330  			tmp, err := ioutil.ReadAll(
   331  				transform.NewReader(bytes.NewReader(dm_build_833), e.NewEncoder()),
   332  			)
   333  			if err != nil {
   334  				panic("UTF8 To Charset error!")
   335  			}
   336  
   337  			return tmp
   338  		}
   339  
   340  		panic("Unsupported Charset!")
   341  	}
   342  
   343  	if dm_build_835.encodeBuffer == nil {
   344  		dm_build_835.encodeBuffer = bytes.NewBuffer(nil)
   345  		dm_build_835.encode = dm_build_878(dm_build_835.getServerEncoding())
   346  		dm_build_835.transformReaderDst = make([]byte, 4096)
   347  		dm_build_835.transformReaderSrc = make([]byte, 4096)
   348  	}
   349  
   350  	if e := dm_build_835.encode; e != nil {
   351  
   352  		dm_build_835.encodeBuffer.Reset()
   353  
   354  		n, err := dm_build_835.encodeBuffer.ReadFrom(
   355  			Dm_build_892(bytes.NewReader(dm_build_833), e.NewEncoder(), dm_build_835.transformReaderDst, dm_build_835.transformReaderSrc),
   356  		)
   357  		if err != nil {
   358  			panic("UTF8 To Charset error!")
   359  		}
   360  		var tmp = make([]byte, n)
   361  		if _, err = dm_build_835.encodeBuffer.Read(tmp); err != nil {
   362  			panic("UTF8 To Charset error!")
   363  		}
   364  		return tmp
   365  	}
   366  
   367  	panic("Unsupported Charset!")
   368  }
   369  
   370  func (Dm_build_837 *dm_build_622) Dm_build_836(dm_build_838 string, dm_build_839 string, dm_build_840 *DmConnection) []byte {
   371  	return Dm_build_837.Dm_build_831([]byte(dm_build_838), dm_build_839, dm_build_840)
   372  }
   373  
   374  func (Dm_build_837 *dm_build_622) Dm_build_836_bytes(dm_build_838 []byte, dm_build_839 string, dm_build_840 *DmConnection) []byte {
   375  	return Dm_build_837.Dm_build_831(dm_build_838, dm_build_839, dm_build_840)
   376  }
   377  
   378  func (Dm_build_842 *dm_build_622) Dm_build_841(dm_build_843 []byte) byte {
   379  	return Dm_build_842.Dm_build_716(dm_build_843, 0)
   380  }
   381  
   382  func (Dm_build_845 *dm_build_622) Dm_build_844(dm_build_846 []byte) int16 {
   383  	return Dm_build_845.Dm_build_720(dm_build_846, 0)
   384  }
   385  
   386  func (Dm_build_848 *dm_build_622) Dm_build_847(dm_build_849 []byte) int32 {
   387  	return Dm_build_848.Dm_build_725(dm_build_849, 0)
   388  }
   389  
   390  func (Dm_build_851 *dm_build_622) Dm_build_850(dm_build_852 []byte) int64 {
   391  	return Dm_build_851.Dm_build_730(dm_build_852, 0)
   392  }
   393  
   394  func (Dm_build_854 *dm_build_622) Dm_build_853(dm_build_855 []byte) float32 {
   395  	return Dm_build_854.Dm_build_735(dm_build_855, 0)
   396  }
   397  
   398  func (Dm_build_857 *dm_build_622) Dm_build_856(dm_build_858 []byte) float64 {
   399  	return Dm_build_857.Dm_build_739(dm_build_858, 0)
   400  }
   401  
   402  func (Dm_build_860 *dm_build_622) Dm_build_859(dm_build_861 []byte) uint8 {
   403  	return Dm_build_860.Dm_build_743(dm_build_861, 0)
   404  }
   405  
   406  func (Dm_build_863 *dm_build_622) Dm_build_862(dm_build_864 []byte) uint16 {
   407  	return Dm_build_863.Dm_build_747(dm_build_864, 0)
   408  }
   409  
   410  func (Dm_build_866 *dm_build_622) Dm_build_865(dm_build_867 []byte) uint32 {
   411  	return Dm_build_866.Dm_build_752(dm_build_867, 0)
   412  }
   413  
   414  func (Dm_build_869 *dm_build_622) Dm_build_868(dm_build_870 []byte, dm_build_871 string, dm_build_872 *DmConnection) []byte {
   415  	if dm_build_871 == "UTF-8" {
   416  		return dm_build_870
   417  	}
   418  
   419  	if dm_build_872 == nil {
   420  		if e := dm_build_878(dm_build_871); e != nil {
   421  
   422  			tmp, err := ioutil.ReadAll(
   423  				transform.NewReader(bytes.NewReader(dm_build_870), e.NewDecoder()),
   424  			)
   425  			if err != nil {
   426  
   427  				panic("Charset To UTF8 error!")
   428  			}
   429  
   430  			return tmp
   431  		}
   432  
   433  		panic("Unsupported Charset!")
   434  	}
   435  
   436  	if dm_build_872.encodeBuffer == nil {
   437  		dm_build_872.encodeBuffer = bytes.NewBuffer(nil)
   438  		dm_build_872.encode = dm_build_878(dm_build_872.getServerEncoding())
   439  		dm_build_872.transformReaderDst = make([]byte, 4096)
   440  		dm_build_872.transformReaderSrc = make([]byte, 4096)
   441  	}
   442  
   443  	if e := dm_build_872.encode; e != nil {
   444  
   445  		dm_build_872.encodeBuffer.Reset()
   446  
   447  		n, err := dm_build_872.encodeBuffer.ReadFrom(
   448  			Dm_build_892(bytes.NewReader(dm_build_870), e.NewDecoder(), dm_build_872.transformReaderDst, dm_build_872.transformReaderSrc),
   449  		)
   450  		if err != nil {
   451  
   452  			panic("Charset To UTF8 error!")
   453  		}
   454  
   455  		return dm_build_872.encodeBuffer.Next(int(n))
   456  	}
   457  
   458  	panic("Unsupported Charset!")
   459  }
   460  
   461  func (Dm_build_874 *dm_build_622) Dm_build_873(dm_build_875 []byte, dm_build_876 string, dm_build_877 *DmConnection) string {
   462  	return string(Dm_build_874.Dm_build_868(dm_build_875, dm_build_876, dm_build_877))
   463  }
   464  
   465  func dm_build_878(dm_build_879 string) encoding.Encoding {
   466  	if e, err := ianaindex.MIB.Encoding(dm_build_879); err == nil && e != nil {
   467  		return e
   468  	}
   469  	return nil
   470  }
   471  
   472  type Dm_build_880 struct {
   473  	dm_build_881 io.Reader
   474  	dm_build_882 transform.Transformer
   475  	dm_build_883 error
   476  
   477  	dm_build_884               []byte
   478  	dm_build_885, dm_build_886 int
   479  
   480  	dm_build_887               []byte
   481  	dm_build_888, dm_build_889 int
   482  
   483  	dm_build_890 bool
   484  }
   485  
   486  const dm_build_891 = 4096
   487  
   488  func Dm_build_892(dm_build_893 io.Reader, dm_build_894 transform.Transformer, dm_build_895 []byte, dm_build_896 []byte) *Dm_build_880 {
   489  	dm_build_894.Reset()
   490  	return &Dm_build_880{
   491  		dm_build_881: dm_build_893,
   492  		dm_build_882: dm_build_894,
   493  		dm_build_884: dm_build_895,
   494  		dm_build_887: dm_build_896,
   495  	}
   496  }
   497  
   498  func (dm_build_898 *Dm_build_880) Read(dm_build_899 []byte) (int, error) {
   499  	dm_build_900, dm_build_901 := 0, error(nil)
   500  	for {
   501  
   502  		if dm_build_898.dm_build_885 != dm_build_898.dm_build_886 {
   503  			dm_build_900 = copy(dm_build_899, dm_build_898.dm_build_884[dm_build_898.dm_build_885:dm_build_898.dm_build_886])
   504  			dm_build_898.dm_build_885 += dm_build_900
   505  			if dm_build_898.dm_build_885 == dm_build_898.dm_build_886 && dm_build_898.dm_build_890 {
   506  				return dm_build_900, dm_build_898.dm_build_883
   507  			}
   508  			return dm_build_900, nil
   509  		} else if dm_build_898.dm_build_890 {
   510  			return 0, dm_build_898.dm_build_883
   511  		}
   512  
   513  		if dm_build_898.dm_build_888 != dm_build_898.dm_build_889 || dm_build_898.dm_build_883 != nil {
   514  			dm_build_898.dm_build_885 = 0
   515  			dm_build_898.dm_build_886, dm_build_900, dm_build_901 = dm_build_898.dm_build_882.Transform(dm_build_898.dm_build_884, dm_build_898.dm_build_887[dm_build_898.dm_build_888:dm_build_898.dm_build_889], dm_build_898.dm_build_883 == io.EOF)
   516  			dm_build_898.dm_build_888 += dm_build_900
   517  
   518  			switch {
   519  			case dm_build_901 == nil:
   520  				if dm_build_898.dm_build_888 != dm_build_898.dm_build_889 {
   521  					dm_build_898.dm_build_883 = nil
   522  				}
   523  
   524  				dm_build_898.dm_build_890 = dm_build_898.dm_build_883 != nil
   525  				continue
   526  			case dm_build_901 == transform.ErrShortDst && (dm_build_898.dm_build_886 != 0 || dm_build_900 != 0):
   527  
   528  				continue
   529  			case dm_build_901 == transform.ErrShortSrc && dm_build_898.dm_build_889-dm_build_898.dm_build_888 != len(dm_build_898.dm_build_887) && dm_build_898.dm_build_883 == nil:
   530  
   531  			default:
   532  				dm_build_898.dm_build_890 = true
   533  
   534  				if dm_build_898.dm_build_883 == nil || dm_build_898.dm_build_883 == io.EOF {
   535  					dm_build_898.dm_build_883 = dm_build_901
   536  				}
   537  				continue
   538  			}
   539  		}
   540  
   541  		if dm_build_898.dm_build_888 != 0 {
   542  			dm_build_898.dm_build_888, dm_build_898.dm_build_889 = 0, copy(dm_build_898.dm_build_887, dm_build_898.dm_build_887[dm_build_898.dm_build_888:dm_build_898.dm_build_889])
   543  		}
   544  		dm_build_900, dm_build_898.dm_build_883 = dm_build_898.dm_build_881.Read(dm_build_898.dm_build_887[dm_build_898.dm_build_889:])
   545  		dm_build_898.dm_build_889 += dm_build_900
   546  	}
   547  }