| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206 |
- /*
- * Copyright (c) 2000-2018, 达梦数据库有限公司.
- * All rights reserved.
- */
- package dm
- import (
- "container/list"
- "io"
- )
- type Dm_build_283 struct {
- dm_build_284 *list.List
- dm_build_285 *dm_build_337
- dm_build_286 int
- }
- func Dm_build_287() *Dm_build_283 {
- return &Dm_build_283{
- dm_build_284: list.New(),
- dm_build_286: 0,
- }
- }
- func (dm_build_289 *Dm_build_283) Dm_build_288() int {
- return dm_build_289.dm_build_286
- }
- func (dm_build_291 *Dm_build_283) Dm_build_290(dm_build_292 *Dm_build_361, dm_build_293 int) int {
- var dm_build_294 = 0
- var dm_build_295 = 0
- for dm_build_294 < dm_build_293 && dm_build_291.dm_build_285 != nil {
- dm_build_295 = dm_build_291.dm_build_285.dm_build_345(dm_build_292, dm_build_293-dm_build_294)
- if dm_build_291.dm_build_285.dm_build_340 == 0 {
- dm_build_291.dm_build_327()
- }
- dm_build_294 += dm_build_295
- dm_build_291.dm_build_286 -= dm_build_295
- }
- return dm_build_294
- }
- func (dm_build_297 *Dm_build_283) Dm_build_296(dm_build_298 []byte, dm_build_299 int, dm_build_300 int) int {
- var dm_build_301 = 0
- var dm_build_302 = 0
- for dm_build_301 < dm_build_300 && dm_build_297.dm_build_285 != nil {
- dm_build_302 = dm_build_297.dm_build_285.dm_build_349(dm_build_298, dm_build_299, dm_build_300-dm_build_301)
- if dm_build_297.dm_build_285.dm_build_340 == 0 {
- dm_build_297.dm_build_327()
- }
- dm_build_301 += dm_build_302
- dm_build_297.dm_build_286 -= dm_build_302
- dm_build_299 += dm_build_302
- }
- return dm_build_301
- }
- func (dm_build_304 *Dm_build_283) Dm_build_303(dm_build_305 io.Writer, dm_build_306 int) int {
- var dm_build_307 = 0
- var dm_build_308 = 0
- for dm_build_307 < dm_build_306 && dm_build_304.dm_build_285 != nil {
- dm_build_308 = dm_build_304.dm_build_285.dm_build_354(dm_build_305, dm_build_306-dm_build_307)
- if dm_build_304.dm_build_285.dm_build_340 == 0 {
- dm_build_304.dm_build_327()
- }
- dm_build_307 += dm_build_308
- dm_build_304.dm_build_286 -= dm_build_308
- }
- return dm_build_307
- }
- func (dm_build_310 *Dm_build_283) Dm_build_309(dm_build_311 []byte, dm_build_312 int, dm_build_313 int) {
- if dm_build_313 == 0 {
- return
- }
- var dm_build_314 = dm_build_341(dm_build_311, dm_build_312, dm_build_313)
- if dm_build_310.dm_build_285 == nil {
- dm_build_310.dm_build_285 = dm_build_314
- } else {
- dm_build_310.dm_build_284.PushBack(dm_build_314)
- }
- dm_build_310.dm_build_286 += dm_build_313
- }
- func (dm_build_316 *Dm_build_283) dm_build_315(dm_build_317 int) byte {
- var dm_build_318 = dm_build_317
- var dm_build_319 = dm_build_316.dm_build_285
- for dm_build_318 > 0 && dm_build_319 != nil {
- if dm_build_319.dm_build_340 == 0 {
- continue
- }
- if dm_build_318 > dm_build_319.dm_build_340-1 {
- dm_build_318 -= dm_build_319.dm_build_340
- dm_build_319 = dm_build_316.dm_build_284.Front().Value.(*dm_build_337)
- } else {
- break
- }
- }
- return dm_build_319.dm_build_358(dm_build_318)
- }
- func (dm_build_321 *Dm_build_283) Dm_build_320(dm_build_322 *Dm_build_283) {
- if dm_build_322.dm_build_286 == 0 {
- return
- }
- var dm_build_323 = dm_build_322.dm_build_285
- for dm_build_323 != nil {
- dm_build_321.dm_build_324(dm_build_323)
- dm_build_322.dm_build_327()
- dm_build_323 = dm_build_322.dm_build_285
- }
- dm_build_322.dm_build_286 = 0
- }
- func (dm_build_325 *Dm_build_283) dm_build_324(dm_build_326 *dm_build_337) {
- if dm_build_326.dm_build_340 == 0 {
- return
- }
- if dm_build_325.dm_build_285 == nil {
- dm_build_325.dm_build_285 = dm_build_326
- } else {
- dm_build_325.dm_build_284.PushBack(dm_build_326)
- }
- dm_build_325.dm_build_286 += dm_build_326.dm_build_340
- }
- func (dm_build_328 *Dm_build_283) dm_build_327() {
- var dm_build_329 = dm_build_328.dm_build_284.Front()
- if dm_build_329 == nil {
- dm_build_328.dm_build_285 = nil
- } else {
- dm_build_328.dm_build_285 = dm_build_329.Value.(*dm_build_337)
- dm_build_328.dm_build_284.Remove(dm_build_329)
- }
- }
- func (dm_build_331 *Dm_build_283) Dm_build_330() []byte {
- var dm_build_332 = make([]byte, dm_build_331.dm_build_286)
- var dm_build_333 = dm_build_331.dm_build_285
- var dm_build_334 = 0
- var dm_build_335 = len(dm_build_332)
- var dm_build_336 = 0
- for dm_build_333 != nil {
- if dm_build_333.dm_build_340 > 0 {
- if dm_build_335 > dm_build_333.dm_build_340 {
- dm_build_336 = dm_build_333.dm_build_340
- } else {
- dm_build_336 = dm_build_335
- }
- copy(dm_build_332[dm_build_334:dm_build_334+dm_build_336], dm_build_333.dm_build_338[dm_build_333.dm_build_339:dm_build_333.dm_build_339+dm_build_336])
- dm_build_334 += dm_build_336
- dm_build_335 -= dm_build_336
- }
- if dm_build_331.dm_build_284.Front() == nil {
- dm_build_333 = nil
- } else {
- dm_build_333 = dm_build_331.dm_build_284.Front().Value.(*dm_build_337)
- }
- }
- return dm_build_332
- }
- type dm_build_337 struct {
- dm_build_338 []byte
- dm_build_339 int
- dm_build_340 int
- }
- func dm_build_341(dm_build_342 []byte, dm_build_343 int, dm_build_344 int) *dm_build_337 {
- return &dm_build_337{
- dm_build_342,
- dm_build_343,
- dm_build_344,
- }
- }
- func (dm_build_346 *dm_build_337) dm_build_345(dm_build_347 *Dm_build_361, dm_build_348 int) int {
- if dm_build_346.dm_build_340 <= dm_build_348 {
- dm_build_348 = dm_build_346.dm_build_340
- }
- dm_build_347.Dm_build_444(dm_build_346.dm_build_338[dm_build_346.dm_build_339 : dm_build_346.dm_build_339+dm_build_348])
- dm_build_346.dm_build_339 += dm_build_348
- dm_build_346.dm_build_340 -= dm_build_348
- return dm_build_348
- }
- func (dm_build_350 *dm_build_337) dm_build_349(dm_build_351 []byte, dm_build_352 int, dm_build_353 int) int {
- if dm_build_350.dm_build_340 <= dm_build_353 {
- dm_build_353 = dm_build_350.dm_build_340
- }
- copy(dm_build_351[dm_build_352:dm_build_352+dm_build_353], dm_build_350.dm_build_338[dm_build_350.dm_build_339:dm_build_350.dm_build_339+dm_build_353])
- dm_build_350.dm_build_339 += dm_build_353
- dm_build_350.dm_build_340 -= dm_build_353
- return dm_build_353
- }
- func (dm_build_355 *dm_build_337) dm_build_354(dm_build_356 io.Writer, dm_build_357 int) int {
- if dm_build_355.dm_build_340 <= dm_build_357 {
- dm_build_357 = dm_build_355.dm_build_340
- }
- dm_build_356.Write(dm_build_355.dm_build_338[dm_build_355.dm_build_339 : dm_build_355.dm_build_339+dm_build_357])
- dm_build_355.dm_build_339 += dm_build_357
- dm_build_355.dm_build_340 -= dm_build_357
- return dm_build_357
- }
- func (dm_build_359 *dm_build_337) dm_build_358(dm_build_360 int) byte {
- return dm_build_359.dm_build_338[dm_build_359.dm_build_339+dm_build_360]
- }
|