gitee.com/chunanyong/dm@v1.8.12/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_648 struct{}
    18  
    19  var Dm_build_649 = &dm_build_648{}
    20  
    21  func (Dm_build_651 *dm_build_648) Dm_build_650(dm_build_652 []byte, dm_build_653 int, dm_build_654 byte) int {
    22  	dm_build_652[dm_build_653] = dm_build_654
    23  	return 1
    24  }
    25  
    26  func (Dm_build_656 *dm_build_648) Dm_build_655(dm_build_657 []byte, dm_build_658 int, dm_build_659 int8) int {
    27  	dm_build_657[dm_build_658] = byte(dm_build_659)
    28  	return 1
    29  }
    30  
    31  func (Dm_build_661 *dm_build_648) Dm_build_660(dm_build_662 []byte, dm_build_663 int, dm_build_664 int16) int {
    32  	dm_build_662[dm_build_663] = byte(dm_build_664)
    33  	dm_build_663++
    34  	dm_build_662[dm_build_663] = byte(dm_build_664 >> 8)
    35  	return 2
    36  }
    37  
    38  func (Dm_build_666 *dm_build_648) Dm_build_665(dm_build_667 []byte, dm_build_668 int, dm_build_669 int32) int {
    39  	dm_build_667[dm_build_668] = byte(dm_build_669)
    40  	dm_build_668++
    41  	dm_build_667[dm_build_668] = byte(dm_build_669 >> 8)
    42  	dm_build_668++
    43  	dm_build_667[dm_build_668] = byte(dm_build_669 >> 16)
    44  	dm_build_668++
    45  	dm_build_667[dm_build_668] = byte(dm_build_669 >> 24)
    46  	dm_build_668++
    47  	return 4
    48  }
    49  
    50  func (Dm_build_671 *dm_build_648) Dm_build_670(dm_build_672 []byte, dm_build_673 int, dm_build_674 int64) int {
    51  	dm_build_672[dm_build_673] = byte(dm_build_674)
    52  	dm_build_673++
    53  	dm_build_672[dm_build_673] = byte(dm_build_674 >> 8)
    54  	dm_build_673++
    55  	dm_build_672[dm_build_673] = byte(dm_build_674 >> 16)
    56  	dm_build_673++
    57  	dm_build_672[dm_build_673] = byte(dm_build_674 >> 24)
    58  	dm_build_673++
    59  	dm_build_672[dm_build_673] = byte(dm_build_674 >> 32)
    60  	dm_build_673++
    61  	dm_build_672[dm_build_673] = byte(dm_build_674 >> 40)
    62  	dm_build_673++
    63  	dm_build_672[dm_build_673] = byte(dm_build_674 >> 48)
    64  	dm_build_673++
    65  	dm_build_672[dm_build_673] = byte(dm_build_674 >> 56)
    66  	return 8
    67  }
    68  
    69  func (Dm_build_676 *dm_build_648) Dm_build_675(dm_build_677 []byte, dm_build_678 int, dm_build_679 float32) int {
    70  	return Dm_build_676.Dm_build_695(dm_build_677, dm_build_678, math.Float32bits(dm_build_679))
    71  }
    72  
    73  func (Dm_build_681 *dm_build_648) Dm_build_680(dm_build_682 []byte, dm_build_683 int, dm_build_684 float64) int {
    74  	return Dm_build_681.Dm_build_700(dm_build_682, dm_build_683, math.Float64bits(dm_build_684))
    75  }
    76  
    77  func (Dm_build_686 *dm_build_648) Dm_build_685(dm_build_687 []byte, dm_build_688 int, dm_build_689 uint8) int {
    78  	dm_build_687[dm_build_688] = byte(dm_build_689)
    79  	return 1
    80  }
    81  
    82  func (Dm_build_691 *dm_build_648) Dm_build_690(dm_build_692 []byte, dm_build_693 int, dm_build_694 uint16) int {
    83  	dm_build_692[dm_build_693] = byte(dm_build_694)
    84  	dm_build_693++
    85  	dm_build_692[dm_build_693] = byte(dm_build_694 >> 8)
    86  	return 2
    87  }
    88  
    89  func (Dm_build_696 *dm_build_648) Dm_build_695(dm_build_697 []byte, dm_build_698 int, dm_build_699 uint32) int {
    90  	dm_build_697[dm_build_698] = byte(dm_build_699)
    91  	dm_build_698++
    92  	dm_build_697[dm_build_698] = byte(dm_build_699 >> 8)
    93  	dm_build_698++
    94  	dm_build_697[dm_build_698] = byte(dm_build_699 >> 16)
    95  	dm_build_698++
    96  	dm_build_697[dm_build_698] = byte(dm_build_699 >> 24)
    97  	return 3
    98  }
    99  
   100  func (Dm_build_701 *dm_build_648) Dm_build_700(dm_build_702 []byte, dm_build_703 int, dm_build_704 uint64) int {
   101  	dm_build_702[dm_build_703] = byte(dm_build_704)
   102  	dm_build_703++
   103  	dm_build_702[dm_build_703] = byte(dm_build_704 >> 8)
   104  	dm_build_703++
   105  	dm_build_702[dm_build_703] = byte(dm_build_704 >> 16)
   106  	dm_build_703++
   107  	dm_build_702[dm_build_703] = byte(dm_build_704 >> 24)
   108  	dm_build_703++
   109  	dm_build_702[dm_build_703] = byte(dm_build_704 >> 32)
   110  	dm_build_703++
   111  	dm_build_702[dm_build_703] = byte(dm_build_704 >> 40)
   112  	dm_build_703++
   113  	dm_build_702[dm_build_703] = byte(dm_build_704 >> 48)
   114  	dm_build_703++
   115  	dm_build_702[dm_build_703] = byte(dm_build_704 >> 56)
   116  	return 3
   117  }
   118  
   119  func (Dm_build_706 *dm_build_648) Dm_build_705(dm_build_707 []byte, dm_build_708 int, dm_build_709 []byte, dm_build_710 int, dm_build_711 int) int {
   120  	copy(dm_build_707[dm_build_708:dm_build_708+dm_build_711], dm_build_709[dm_build_710:dm_build_710+dm_build_711])
   121  	return dm_build_711
   122  }
   123  
   124  func (Dm_build_713 *dm_build_648) Dm_build_712(dm_build_714 []byte, dm_build_715 int, dm_build_716 []byte, dm_build_717 int, dm_build_718 int) int {
   125  	dm_build_715 += Dm_build_713.Dm_build_695(dm_build_714, dm_build_715, uint32(dm_build_718))
   126  	return 4 + Dm_build_713.Dm_build_705(dm_build_714, dm_build_715, dm_build_716, dm_build_717, dm_build_718)
   127  }
   128  
   129  func (Dm_build_720 *dm_build_648) Dm_build_719(dm_build_721 []byte, dm_build_722 int, dm_build_723 []byte, dm_build_724 int, dm_build_725 int) int {
   130  	dm_build_722 += Dm_build_720.Dm_build_690(dm_build_721, dm_build_722, uint16(dm_build_725))
   131  	return 2 + Dm_build_720.Dm_build_705(dm_build_721, dm_build_722, dm_build_723, dm_build_724, dm_build_725)
   132  }
   133  
   134  func (Dm_build_727 *dm_build_648) Dm_build_726(dm_build_728 []byte, dm_build_729 int, dm_build_730 string, dm_build_731 string, dm_build_732 *DmConnection) int {
   135  	dm_build_733 := Dm_build_727.Dm_build_865(dm_build_730, dm_build_731, dm_build_732)
   136  	dm_build_729 += Dm_build_727.Dm_build_695(dm_build_728, dm_build_729, uint32(len(dm_build_733)))
   137  	return 4 + Dm_build_727.Dm_build_705(dm_build_728, dm_build_729, dm_build_733, 0, len(dm_build_733))
   138  }
   139  
   140  func (Dm_build_735 *dm_build_648) Dm_build_734(dm_build_736 []byte, dm_build_737 int, dm_build_738 string, dm_build_739 string, dm_build_740 *DmConnection) int {
   141  	dm_build_741 := Dm_build_735.Dm_build_865(dm_build_738, dm_build_739, dm_build_740)
   142  
   143  	dm_build_737 += Dm_build_735.Dm_build_690(dm_build_736, dm_build_737, uint16(len(dm_build_741)))
   144  	return 2 + Dm_build_735.Dm_build_705(dm_build_736, dm_build_737, dm_build_741, 0, len(dm_build_741))
   145  }
   146  
   147  func (Dm_build_743 *dm_build_648) Dm_build_742(dm_build_744 []byte, dm_build_745 int) byte {
   148  	return dm_build_744[dm_build_745]
   149  }
   150  
   151  func (Dm_build_747 *dm_build_648) Dm_build_746(dm_build_748 []byte, dm_build_749 int) int16 {
   152  	var dm_build_750 int16
   153  	dm_build_750 = int16(dm_build_748[dm_build_749] & 0xff)
   154  	dm_build_749++
   155  	dm_build_750 |= int16(dm_build_748[dm_build_749]&0xff) << 8
   156  	return dm_build_750
   157  }
   158  
   159  func (Dm_build_752 *dm_build_648) Dm_build_751(dm_build_753 []byte, dm_build_754 int) int32 {
   160  	var dm_build_755 int32
   161  	dm_build_755 = int32(dm_build_753[dm_build_754] & 0xff)
   162  	dm_build_754++
   163  	dm_build_755 |= int32(dm_build_753[dm_build_754]&0xff) << 8
   164  	dm_build_754++
   165  	dm_build_755 |= int32(dm_build_753[dm_build_754]&0xff) << 16
   166  	dm_build_754++
   167  	dm_build_755 |= int32(dm_build_753[dm_build_754]&0xff) << 24
   168  	return dm_build_755
   169  }
   170  
   171  func (Dm_build_757 *dm_build_648) Dm_build_756(dm_build_758 []byte, dm_build_759 int) int64 {
   172  	var dm_build_760 int64
   173  	dm_build_760 = int64(dm_build_758[dm_build_759] & 0xff)
   174  	dm_build_759++
   175  	dm_build_760 |= int64(dm_build_758[dm_build_759]&0xff) << 8
   176  	dm_build_759++
   177  	dm_build_760 |= int64(dm_build_758[dm_build_759]&0xff) << 16
   178  	dm_build_759++
   179  	dm_build_760 |= int64(dm_build_758[dm_build_759]&0xff) << 24
   180  	dm_build_759++
   181  	dm_build_760 |= int64(dm_build_758[dm_build_759]&0xff) << 32
   182  	dm_build_759++
   183  	dm_build_760 |= int64(dm_build_758[dm_build_759]&0xff) << 40
   184  	dm_build_759++
   185  	dm_build_760 |= int64(dm_build_758[dm_build_759]&0xff) << 48
   186  	dm_build_759++
   187  	dm_build_760 |= int64(dm_build_758[dm_build_759]&0xff) << 56
   188  	return dm_build_760
   189  }
   190  
   191  func (Dm_build_762 *dm_build_648) Dm_build_761(dm_build_763 []byte, dm_build_764 int) float32 {
   192  	return math.Float32frombits(Dm_build_762.Dm_build_778(dm_build_763, dm_build_764))
   193  }
   194  
   195  func (Dm_build_766 *dm_build_648) Dm_build_765(dm_build_767 []byte, dm_build_768 int) float64 {
   196  	return math.Float64frombits(Dm_build_766.Dm_build_783(dm_build_767, dm_build_768))
   197  }
   198  
   199  func (Dm_build_770 *dm_build_648) Dm_build_769(dm_build_771 []byte, dm_build_772 int) uint8 {
   200  	return uint8(dm_build_771[dm_build_772] & 0xff)
   201  }
   202  
   203  func (Dm_build_774 *dm_build_648) Dm_build_773(dm_build_775 []byte, dm_build_776 int) uint16 {
   204  	var dm_build_777 uint16
   205  	dm_build_777 = uint16(dm_build_775[dm_build_776] & 0xff)
   206  	dm_build_776++
   207  	dm_build_777 |= uint16(dm_build_775[dm_build_776]&0xff) << 8
   208  	return dm_build_777
   209  }
   210  
   211  func (Dm_build_779 *dm_build_648) Dm_build_778(dm_build_780 []byte, dm_build_781 int) uint32 {
   212  	var dm_build_782 uint32
   213  	dm_build_782 = uint32(dm_build_780[dm_build_781] & 0xff)
   214  	dm_build_781++
   215  	dm_build_782 |= uint32(dm_build_780[dm_build_781]&0xff) << 8
   216  	dm_build_781++
   217  	dm_build_782 |= uint32(dm_build_780[dm_build_781]&0xff) << 16
   218  	dm_build_781++
   219  	dm_build_782 |= uint32(dm_build_780[dm_build_781]&0xff) << 24
   220  	return dm_build_782
   221  }
   222  
   223  func (Dm_build_784 *dm_build_648) Dm_build_783(dm_build_785 []byte, dm_build_786 int) uint64 {
   224  	var dm_build_787 uint64
   225  	dm_build_787 = uint64(dm_build_785[dm_build_786] & 0xff)
   226  	dm_build_786++
   227  	dm_build_787 |= uint64(dm_build_785[dm_build_786]&0xff) << 8
   228  	dm_build_786++
   229  	dm_build_787 |= uint64(dm_build_785[dm_build_786]&0xff) << 16
   230  	dm_build_786++
   231  	dm_build_787 |= uint64(dm_build_785[dm_build_786]&0xff) << 24
   232  	dm_build_786++
   233  	dm_build_787 |= uint64(dm_build_785[dm_build_786]&0xff) << 32
   234  	dm_build_786++
   235  	dm_build_787 |= uint64(dm_build_785[dm_build_786]&0xff) << 40
   236  	dm_build_786++
   237  	dm_build_787 |= uint64(dm_build_785[dm_build_786]&0xff) << 48
   238  	dm_build_786++
   239  	dm_build_787 |= uint64(dm_build_785[dm_build_786]&0xff) << 56
   240  	return dm_build_787
   241  }
   242  
   243  func (Dm_build_789 *dm_build_648) Dm_build_788(dm_build_790 []byte, dm_build_791 int) []byte {
   244  	dm_build_792 := Dm_build_789.Dm_build_778(dm_build_790, dm_build_791)
   245  
   246  	dm_build_793 := make([]byte, dm_build_792)
   247  	copy(dm_build_793[:int(dm_build_792)], dm_build_790[dm_build_791+4:dm_build_791+4+int(dm_build_792)])
   248  	return dm_build_793
   249  }
   250  
   251  func (Dm_build_795 *dm_build_648) Dm_build_794(dm_build_796 []byte, dm_build_797 int) []byte {
   252  	dm_build_798 := Dm_build_795.Dm_build_773(dm_build_796, dm_build_797)
   253  
   254  	dm_build_799 := make([]byte, dm_build_798)
   255  	copy(dm_build_799[:int(dm_build_798)], dm_build_796[dm_build_797+2:dm_build_797+2+int(dm_build_798)])
   256  	return dm_build_799
   257  }
   258  
   259  func (Dm_build_801 *dm_build_648) Dm_build_800(dm_build_802 []byte, dm_build_803 int, dm_build_804 int) []byte {
   260  
   261  	dm_build_805 := make([]byte, dm_build_804)
   262  	copy(dm_build_805[:dm_build_804], dm_build_802[dm_build_803:dm_build_803+dm_build_804])
   263  	return dm_build_805
   264  }
   265  
   266  func (Dm_build_807 *dm_build_648) Dm_build_806(dm_build_808 []byte, dm_build_809 int, dm_build_810 int, dm_build_811 string, dm_build_812 *DmConnection) string {
   267  	return Dm_build_807.Dm_build_902(dm_build_808[dm_build_809:dm_build_809+dm_build_810], dm_build_811, dm_build_812)
   268  }
   269  
   270  func (Dm_build_814 *dm_build_648) Dm_build_813(dm_build_815 []byte, dm_build_816 int, dm_build_817 string, dm_build_818 *DmConnection) string {
   271  	dm_build_819 := Dm_build_814.Dm_build_778(dm_build_815, dm_build_816)
   272  	dm_build_816 += 4
   273  	return Dm_build_814.Dm_build_806(dm_build_815, dm_build_816, int(dm_build_819), dm_build_817, dm_build_818)
   274  }
   275  
   276  func (Dm_build_821 *dm_build_648) Dm_build_820(dm_build_822 []byte, dm_build_823 int, dm_build_824 string, dm_build_825 *DmConnection) string {
   277  	dm_build_826 := Dm_build_821.Dm_build_773(dm_build_822, dm_build_823)
   278  	dm_build_823 += 2
   279  	return Dm_build_821.Dm_build_806(dm_build_822, dm_build_823, int(dm_build_826), dm_build_824, dm_build_825)
   280  }
   281  
   282  func (Dm_build_828 *dm_build_648) Dm_build_827(dm_build_829 byte) []byte {
   283  	return []byte{dm_build_829}
   284  }
   285  
   286  func (Dm_build_831 *dm_build_648) Dm_build_830(dm_build_832 int8) []byte {
   287  	return []byte{byte(dm_build_832)}
   288  }
   289  
   290  func (Dm_build_834 *dm_build_648) Dm_build_833(dm_build_835 int16) []byte {
   291  	return []byte{byte(dm_build_835), byte(dm_build_835 >> 8)}
   292  }
   293  
   294  func (Dm_build_837 *dm_build_648) Dm_build_836(dm_build_838 int32) []byte {
   295  	return []byte{byte(dm_build_838), byte(dm_build_838 >> 8), byte(dm_build_838 >> 16), byte(dm_build_838 >> 24)}
   296  }
   297  
   298  func (Dm_build_840 *dm_build_648) Dm_build_839(dm_build_841 int64) []byte {
   299  	return []byte{byte(dm_build_841), byte(dm_build_841 >> 8), byte(dm_build_841 >> 16), byte(dm_build_841 >> 24), byte(dm_build_841 >> 32),
   300  		byte(dm_build_841 >> 40), byte(dm_build_841 >> 48), byte(dm_build_841 >> 56)}
   301  }
   302  
   303  func (Dm_build_843 *dm_build_648) Dm_build_842(dm_build_844 float32) []byte {
   304  	return Dm_build_843.Dm_build_854(math.Float32bits(dm_build_844))
   305  }
   306  
   307  func (Dm_build_846 *dm_build_648) Dm_build_845(dm_build_847 float64) []byte {
   308  	return Dm_build_846.Dm_build_857(math.Float64bits(dm_build_847))
   309  }
   310  
   311  func (Dm_build_849 *dm_build_648) Dm_build_848(dm_build_850 uint8) []byte {
   312  	return []byte{byte(dm_build_850)}
   313  }
   314  
   315  func (Dm_build_852 *dm_build_648) Dm_build_851(dm_build_853 uint16) []byte {
   316  	return []byte{byte(dm_build_853), byte(dm_build_853 >> 8)}
   317  }
   318  
   319  func (Dm_build_855 *dm_build_648) Dm_build_854(dm_build_856 uint32) []byte {
   320  	return []byte{byte(dm_build_856), byte(dm_build_856 >> 8), byte(dm_build_856 >> 16), byte(dm_build_856 >> 24)}
   321  }
   322  
   323  func (Dm_build_858 *dm_build_648) Dm_build_857(dm_build_859 uint64) []byte {
   324  	return []byte{byte(dm_build_859), byte(dm_build_859 >> 8), byte(dm_build_859 >> 16), byte(dm_build_859 >> 24), byte(dm_build_859 >> 32), byte(dm_build_859 >> 40), byte(dm_build_859 >> 48), byte(dm_build_859 >> 56)}
   325  }
   326  
   327  func (Dm_build_861 *dm_build_648) Dm_build_860(dm_build_862 []byte, dm_build_863 string, dm_build_864 *DmConnection) []byte {
   328  	if dm_build_863 == "UTF-8" {
   329  		return dm_build_862
   330  	}
   331  
   332  	if dm_build_864 == nil {
   333  		if e := dm_build_907(dm_build_863); e != nil {
   334  			tmp, err := ioutil.ReadAll(
   335  				transform.NewReader(bytes.NewReader(dm_build_862), e.NewEncoder()),
   336  			)
   337  			if err != nil {
   338  				panic("UTF8 To Charset error!")
   339  			}
   340  
   341  			return tmp
   342  		}
   343  
   344  		panic("Unsupported Charset!")
   345  	}
   346  
   347  	if dm_build_864.encodeBuffer == nil {
   348  		dm_build_864.encodeBuffer = bytes.NewBuffer(nil)
   349  		dm_build_864.encode = dm_build_907(dm_build_864.getServerEncoding())
   350  		dm_build_864.transformReaderDst = make([]byte, 4096)
   351  		dm_build_864.transformReaderSrc = make([]byte, 4096)
   352  	}
   353  
   354  	if e := dm_build_864.encode; e != nil {
   355  
   356  		dm_build_864.encodeBuffer.Reset()
   357  
   358  		n, err := dm_build_864.encodeBuffer.ReadFrom(
   359  			Dm_build_921(bytes.NewReader(dm_build_862), e.NewEncoder(), dm_build_864.transformReaderDst, dm_build_864.transformReaderSrc),
   360  		)
   361  		if err != nil {
   362  			panic("UTF8 To Charset error!")
   363  		}
   364  		var tmp = make([]byte, n)
   365  		if _, err = dm_build_864.encodeBuffer.Read(tmp); err != nil {
   366  			panic("UTF8 To Charset error!")
   367  		}
   368  		return tmp
   369  	}
   370  
   371  	panic("Unsupported Charset!")
   372  }
   373  
   374  func (Dm_build_866 *dm_build_648) Dm_build_865(dm_build_867 string, dm_build_868 string, dm_build_869 *DmConnection) []byte {
   375  	return Dm_build_866.Dm_build_860([]byte(dm_build_867), dm_build_868, dm_build_869)
   376  }
   377  
   378  func (Dm_build_871 *dm_build_648) Dm_build_870(dm_build_872 []byte) byte {
   379  	return Dm_build_871.Dm_build_742(dm_build_872, 0)
   380  }
   381  
   382  func (Dm_build_874 *dm_build_648) Dm_build_873(dm_build_875 []byte) int16 {
   383  	return Dm_build_874.Dm_build_746(dm_build_875, 0)
   384  }
   385  
   386  func (Dm_build_877 *dm_build_648) Dm_build_876(dm_build_878 []byte) int32 {
   387  	return Dm_build_877.Dm_build_751(dm_build_878, 0)
   388  }
   389  
   390  func (Dm_build_880 *dm_build_648) Dm_build_879(dm_build_881 []byte) int64 {
   391  	return Dm_build_880.Dm_build_756(dm_build_881, 0)
   392  }
   393  
   394  func (Dm_build_883 *dm_build_648) Dm_build_882(dm_build_884 []byte) float32 {
   395  	return Dm_build_883.Dm_build_761(dm_build_884, 0)
   396  }
   397  
   398  func (Dm_build_886 *dm_build_648) Dm_build_885(dm_build_887 []byte) float64 {
   399  	return Dm_build_886.Dm_build_765(dm_build_887, 0)
   400  }
   401  
   402  func (Dm_build_889 *dm_build_648) Dm_build_888(dm_build_890 []byte) uint8 {
   403  	return Dm_build_889.Dm_build_769(dm_build_890, 0)
   404  }
   405  
   406  func (Dm_build_892 *dm_build_648) Dm_build_891(dm_build_893 []byte) uint16 {
   407  	return Dm_build_892.Dm_build_773(dm_build_893, 0)
   408  }
   409  
   410  func (Dm_build_895 *dm_build_648) Dm_build_894(dm_build_896 []byte) uint32 {
   411  	return Dm_build_895.Dm_build_778(dm_build_896, 0)
   412  }
   413  
   414  func (Dm_build_898 *dm_build_648) Dm_build_897(dm_build_899 []byte, dm_build_900 string, dm_build_901 *DmConnection) []byte {
   415  	if dm_build_900 == "UTF-8" {
   416  		return dm_build_899
   417  	}
   418  
   419  	if dm_build_901 == nil {
   420  		if e := dm_build_907(dm_build_900); e != nil {
   421  
   422  			tmp, err := ioutil.ReadAll(
   423  				transform.NewReader(bytes.NewReader(dm_build_899), 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_901.encodeBuffer == nil {
   437  		dm_build_901.encodeBuffer = bytes.NewBuffer(nil)
   438  		dm_build_901.encode = dm_build_907(dm_build_901.getServerEncoding())
   439  		dm_build_901.transformReaderDst = make([]byte, 4096)
   440  		dm_build_901.transformReaderSrc = make([]byte, 4096)
   441  	}
   442  
   443  	if e := dm_build_901.encode; e != nil {
   444  
   445  		dm_build_901.encodeBuffer.Reset()
   446  
   447  		n, err := dm_build_901.encodeBuffer.ReadFrom(
   448  			Dm_build_921(bytes.NewReader(dm_build_899), e.NewDecoder(), dm_build_901.transformReaderDst, dm_build_901.transformReaderSrc),
   449  		)
   450  		if err != nil {
   451  
   452  			panic("Charset To UTF8 error!")
   453  		}
   454  
   455  		return dm_build_901.encodeBuffer.Next(int(n))
   456  	}
   457  
   458  	panic("Unsupported Charset!")
   459  }
   460  
   461  func (Dm_build_903 *dm_build_648) Dm_build_902(dm_build_904 []byte, dm_build_905 string, dm_build_906 *DmConnection) string {
   462  	return string(Dm_build_903.Dm_build_897(dm_build_904, dm_build_905, dm_build_906))
   463  }
   464  
   465  func dm_build_907(dm_build_908 string) encoding.Encoding {
   466  	if e, err := ianaindex.MIB.Encoding(dm_build_908); err == nil && e != nil {
   467  		return e
   468  	}
   469  	return nil
   470  }
   471  
   472  type Dm_build_909 struct {
   473  	dm_build_910 io.Reader
   474  	dm_build_911 transform.Transformer
   475  	dm_build_912 error
   476  
   477  	dm_build_913               []byte
   478  	dm_build_914, dm_build_915 int
   479  
   480  	dm_build_916               []byte
   481  	dm_build_917, dm_build_918 int
   482  
   483  	dm_build_919 bool
   484  }
   485  
   486  const dm_build_920 = 4096
   487  
   488  func Dm_build_921(dm_build_922 io.Reader, dm_build_923 transform.Transformer, dm_build_924 []byte, dm_build_925 []byte) *Dm_build_909 {
   489  	dm_build_923.Reset()
   490  	return &Dm_build_909{
   491  		dm_build_910: dm_build_922,
   492  		dm_build_911: dm_build_923,
   493  		dm_build_913: dm_build_924,
   494  		dm_build_916: dm_build_925,
   495  	}
   496  }
   497  
   498  func (dm_build_927 *Dm_build_909) Read(dm_build_928 []byte) (int, error) {
   499  	dm_build_929, dm_build_930 := 0, error(nil)
   500  	for {
   501  
   502  		if dm_build_927.dm_build_914 != dm_build_927.dm_build_915 {
   503  			dm_build_929 = copy(dm_build_928, dm_build_927.dm_build_913[dm_build_927.dm_build_914:dm_build_927.dm_build_915])
   504  			dm_build_927.dm_build_914 += dm_build_929
   505  			if dm_build_927.dm_build_914 == dm_build_927.dm_build_915 && dm_build_927.dm_build_919 {
   506  				return dm_build_929, dm_build_927.dm_build_912
   507  			}
   508  			return dm_build_929, nil
   509  		} else if dm_build_927.dm_build_919 {
   510  			return 0, dm_build_927.dm_build_912
   511  		}
   512  
   513  		if dm_build_927.dm_build_917 != dm_build_927.dm_build_918 || dm_build_927.dm_build_912 != nil {
   514  			dm_build_927.dm_build_914 = 0
   515  			dm_build_927.dm_build_915, dm_build_929, dm_build_930 = dm_build_927.dm_build_911.Transform(dm_build_927.dm_build_913, dm_build_927.dm_build_916[dm_build_927.dm_build_917:dm_build_927.dm_build_918], dm_build_927.dm_build_912 == io.EOF)
   516  			dm_build_927.dm_build_917 += dm_build_929
   517  
   518  			switch {
   519  			case dm_build_930 == nil:
   520  				if dm_build_927.dm_build_917 != dm_build_927.dm_build_918 {
   521  					dm_build_927.dm_build_912 = nil
   522  				}
   523  
   524  				dm_build_927.dm_build_919 = dm_build_927.dm_build_912 != nil
   525  				continue
   526  			case dm_build_930 == transform.ErrShortDst && (dm_build_927.dm_build_915 != 0 || dm_build_929 != 0):
   527  
   528  				continue
   529  			case dm_build_930 == transform.ErrShortSrc && dm_build_927.dm_build_918-dm_build_927.dm_build_917 != len(dm_build_927.dm_build_916) && dm_build_927.dm_build_912 == nil:
   530  
   531  			default:
   532  				dm_build_927.dm_build_919 = true
   533  
   534  				if dm_build_927.dm_build_912 == nil || dm_build_927.dm_build_912 == io.EOF {
   535  					dm_build_927.dm_build_912 = dm_build_930
   536  				}
   537  				continue
   538  			}
   539  		}
   540  
   541  		if dm_build_927.dm_build_917 != 0 {
   542  			dm_build_927.dm_build_917, dm_build_927.dm_build_918 = 0, copy(dm_build_927.dm_build_916, dm_build_927.dm_build_916[dm_build_927.dm_build_917:dm_build_927.dm_build_918])
   543  		}
   544  		dm_build_929, dm_build_927.dm_build_912 = dm_build_927.dm_build_910.Read(dm_build_927.dm_build_916[dm_build_927.dm_build_918:])
   545  		dm_build_927.dm_build_918 += dm_build_929
   546  	}
   547  }