Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  dexpreopt_enc.go   Sprache: unbekannt

 
Spracherkennung für: .go vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

// Code generated by go run gob_gen.go; DO NOT EDIT.

package dexpreopt

import (
 "android/soong/android"
 "bytes"
 "fmt"
 "github.com/google/blueprint/gobtools"
 "github.com/google/blueprint/proptools"
 "reflect"
 "unsafe"
)

// begin of class_loader_context.go
func init() {
 ClassLoaderContextGobRegId = gobtools.RegisterType(func() gobtools.CustomDec { return new(ClassLoaderContext) })
}

func (r ClassLoaderContext) Encode(ctx gobtools.EncContext, buf *bytes.Buffer) error {
 var err error

 if err = gobtools.EncodeString(buf, r.Name); err != nil {
  return err
 }

 if err = gobtools.EncodeBool(buf, r.Optional); err != nil {
  return err
 }

 if err = gobtools.EncodeInterface(ctx, buf, r.Host); err != nil {
  return err
 }

 if err = gobtools.EncodeString(buf, r.Device); err != nil {
  return err
 }

 if r.Subcontexts == nil {
  if err = gobtools.EncodeInt(buf, -1); err != nil {
   return err
  }
 } else {
  if err = gobtools.EncodeInt(buf, len(r.Subcontexts)); err != nil {
   return err
  }
  for val1 := 0; val1 < len(r.Subcontexts); val1++ {
   val2 := r.Subcontexts[val1] == nil
   if err = gobtools.EncodeBool(buf, val2); err != nil {
    return err
   }
   if !val2 {
    if err = (*r.Subcontexts[val1]).Encode(ctx, buf); err != nil {
     return err
    }
   }
  }
 }
 return err
}

func (r ClassLoaderContext) CustomHash(hasher *proptools.Hasher) error {
 hasher.WriteString(":dexpreopt.ClassLoaderContext")
 hasher.WriteInt(5)
 hasher.WriteString(":.string")
 hasher.WriteString(r.Name)
 hasher.WriteString(":.bool")
 if r.Optional {
  hasher.WriteByte(1)
 } else {
  hasher.WriteByte(0)
 }
 hasher.WriteString(":dexpreopt.android.Path")
 val1 := r.Host == nil
 if val1 {
  hasher.WriteByte(0)
 } else {
  if v := reflect.ValueOf(r.Host); v.Kind() == reflect.Ptr {
   if v.IsNil() {
    panic(fmt.Errorf("nil pointer is not supported in interface"))
   } else {
    val2 := r.Host == nil
    if val2 {
     hasher.WriteByte(0)
    } else {
     val3 := func(hasher *proptools.Hasher) error { return r.Host.(proptools.CustomHash).CustomHash(hasher) }
     if err := proptools.HashReference(hasher, uintptr(v.Pointer()), val3); err != nil {
      return err
     }
    }
   }
  } else {
   r.Host.(proptools.CustomHash).CustomHash(hasher)
  }
 }
 hasher.WriteString(":.string")
 hasher.WriteString(r.Device)
 hasher.WriteString(":.[]*ClassLoaderContext")
 hasher.WriteInt(len(r.Subcontexts))
 for val4 := 0; val4 < len(r.Subcontexts); val4++ {
  hasher.WriteString(":.*ClassLoaderContext")
  val5 := r.Subcontexts[val4] == nil
  if val5 {
   hasher.WriteByte(0)
  } else {
   val6 := func(hasher *proptools.Hasher) error {
    if err := (*r.Subcontexts[val4]).CustomHash(hasher); err != nil {
     return err
    }
    return nil
   }
   if err := proptools.HashReference(hasher, uintptr(unsafe.Pointer(r.Subcontexts[val4])), val6); err != nil {
    return err
   }
  }
 }
 return nil
}

func (r *ClassLoaderContext) Decode(ctx gobtools.EncContext, buf *bytes.Reader) error {
 var err error

 err = gobtools.DecodeString(buf, &r.Name)
 if err != nil {
  return err
 }

 err = gobtools.DecodeBool(buf, &r.Optional)
 if err != nil {
  return err
 }

 if val4, err := gobtools.DecodeInterface(ctx, buf); err != nil {
  return err
 } else if val4 == nil {
  r.Host = nil
 } else {
  r.Host = val4.(android.Path)
 }

 err = gobtools.DecodeString(buf, &r.Device)
 if err != nil {
  return err
 }

 var val7 int
 err = gobtools.DecodeInt(buf, &val7)
 if err != nil {
  return err
 }
 if val7 != -1 {
  r.Subcontexts = make([]*ClassLoaderContext, val7)
  for val8 := 0; val8 < int(val7); val8++ {
   var val10 bool
   if err = gobtools.DecodeBool(buf, &val10); err != nil {
    return err
   }
   if !val10 {
    var val9 ClassLoaderContext
    if err = val9.Decode(ctx, buf); err != nil {
     return err
    }
    r.Subcontexts[val8] = &val9
   }
  }
 }

 return err
}

var ClassLoaderContextGobRegId int16

func (r ClassLoaderContext) GetTypeId() int16 {
 return ClassLoaderContextGobRegId
}

// end of class_loader_context.go

[Dauer der Verarbeitung: 0.16 Sekunden, vorverarbeitet 2026-06-28]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik