mirror of
https://github.com/golang/go
synced 2024-11-20 11:04:56 -07:00
convert gob to whole-package compilation.
had to reorder some init code. R=r DELTA=136 (15 added, 110 deleted, 11 changed) OCL=33071 CL=33102
This commit is contained in:
parent
b04ac108fd
commit
a5bf45e389
@ -2,85 +2,14 @@
|
|||||||
# Use of this source code is governed by a BSD-style
|
# Use of this source code is governed by a BSD-style
|
||||||
# license that can be found in the LICENSE file.
|
# license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
|
||||||
# DO NOT EDIT. Automatically generated by gobuild.
|
|
||||||
# gobuild -m >Makefile
|
|
||||||
|
|
||||||
D=
|
|
||||||
|
|
||||||
include $(GOROOT)/src/Make.$(GOARCH)
|
include $(GOROOT)/src/Make.$(GOARCH)
|
||||||
AR=gopack
|
|
||||||
|
|
||||||
default: packages
|
TARG=gob
|
||||||
|
GOFILES=\
|
||||||
|
decode.go\
|
||||||
|
decoder.go\
|
||||||
|
encode.go\
|
||||||
|
encoder.go\
|
||||||
|
type.go\
|
||||||
|
|
||||||
clean:
|
include $(GOROOT)/src/Make.pkg
|
||||||
rm -rf *.[$(OS)] *.a [$(OS)].out _obj
|
|
||||||
|
|
||||||
test: packages
|
|
||||||
gotest
|
|
||||||
|
|
||||||
coverage: packages
|
|
||||||
gotest
|
|
||||||
6cov -g $$(pwd) | grep -v '_test\.go:'
|
|
||||||
|
|
||||||
%.$O: %.go
|
|
||||||
$(GC) -I_obj $*.go
|
|
||||||
|
|
||||||
%.$O: %.c
|
|
||||||
$(CC) $*.c
|
|
||||||
|
|
||||||
%.$O: %.s
|
|
||||||
$(AS) $*.s
|
|
||||||
|
|
||||||
O1=\
|
|
||||||
type.$O\
|
|
||||||
|
|
||||||
O2=\
|
|
||||||
encode.$O\
|
|
||||||
|
|
||||||
O3=\
|
|
||||||
decode.$O\
|
|
||||||
encoder.$O\
|
|
||||||
|
|
||||||
O4=\
|
|
||||||
decoder.$O\
|
|
||||||
|
|
||||||
|
|
||||||
phases: a1 a2 a3 a4
|
|
||||||
_obj$D/gob.a: phases
|
|
||||||
|
|
||||||
a1: $(O1)
|
|
||||||
$(AR) grc _obj$D/gob.a type.$O
|
|
||||||
rm -f $(O1)
|
|
||||||
|
|
||||||
a2: $(O2)
|
|
||||||
$(AR) grc _obj$D/gob.a encode.$O
|
|
||||||
rm -f $(O2)
|
|
||||||
|
|
||||||
a3: $(O3)
|
|
||||||
$(AR) grc _obj$D/gob.a decode.$O encoder.$O
|
|
||||||
rm -f $(O3)
|
|
||||||
|
|
||||||
a4: $(O4)
|
|
||||||
$(AR) grc _obj$D/gob.a decoder.$O
|
|
||||||
rm -f $(O4)
|
|
||||||
|
|
||||||
|
|
||||||
newpkg: clean
|
|
||||||
mkdir -p _obj$D
|
|
||||||
$(AR) grc _obj$D/gob.a
|
|
||||||
|
|
||||||
$(O1): newpkg
|
|
||||||
$(O2): a1
|
|
||||||
$(O3): a2
|
|
||||||
$(O4): a3
|
|
||||||
$(O5): a4
|
|
||||||
|
|
||||||
nuke: clean
|
|
||||||
rm -f $(GOROOT)/pkg/$(GOOS)_$(GOARCH)$D/gob.a
|
|
||||||
|
|
||||||
packages: _obj$D/gob.a
|
|
||||||
|
|
||||||
install: packages
|
|
||||||
test -d $(GOROOT)/pkg && mkdir -p $(GOROOT)/pkg/$(GOOS)_$(GOARCH)$D
|
|
||||||
cp _obj$D/gob.a $(GOROOT)/pkg/$(GOOS)_$(GOARCH)$D/gob.a
|
|
||||||
|
@ -6,7 +6,6 @@ package gob
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes";
|
"bytes";
|
||||||
"gob";
|
|
||||||
"math";
|
"math";
|
||||||
"os";
|
"os";
|
||||||
"reflect";
|
"reflect";
|
||||||
|
@ -9,7 +9,6 @@ package gob
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes";
|
"bytes";
|
||||||
"gob";
|
|
||||||
"io";
|
"io";
|
||||||
"math";
|
"math";
|
||||||
"os";
|
"os";
|
||||||
@ -512,9 +511,6 @@ var decIgnoreOpMap = map[typeId] decOp {
|
|||||||
tString: ignoreUint8Array,
|
tString: ignoreUint8Array,
|
||||||
}
|
}
|
||||||
|
|
||||||
func getDecEnginePtr(wireId typeId, rt reflect.Type) (enginePtr **decEngine, err os.Error)
|
|
||||||
func getIgnoreEnginePtr(wireId typeId) (enginePtr **decEngine, err os.Error)
|
|
||||||
|
|
||||||
// Return the decoding op for the base type under rt and
|
// Return the decoding op for the base type under rt and
|
||||||
// the indirection count to reach it.
|
// the indirection count to reach it.
|
||||||
func decOpFor(wireId typeId, rt reflect.Type, name string) (decOp, int, os.Error) {
|
func decOpFor(wireId typeId, rt reflect.Type, name string) (decOp, int, os.Error) {
|
||||||
|
@ -6,7 +6,6 @@ package gob
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes";
|
"bytes";
|
||||||
"gob";
|
|
||||||
"io";
|
"io";
|
||||||
"os";
|
"os";
|
||||||
"reflect";
|
"reflect";
|
||||||
|
@ -6,7 +6,6 @@ package gob
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes";
|
"bytes";
|
||||||
"gob";
|
|
||||||
"io";
|
"io";
|
||||||
"math";
|
"math";
|
||||||
"os";
|
"os";
|
||||||
@ -335,8 +334,6 @@ var encOpMap = map[reflect.Type] encOp {
|
|||||||
valueKind("x"): encString,
|
valueKind("x"): encString,
|
||||||
}
|
}
|
||||||
|
|
||||||
func getEncEngine(rt reflect.Type) (*encEngine, os.Error)
|
|
||||||
|
|
||||||
// Return the encoding op for the base type under rt and
|
// Return the encoding op for the base type under rt and
|
||||||
// the indirection count to reach it.
|
// the indirection count to reach it.
|
||||||
func encOpFor(rt reflect.Type) (encOp, int, os.Error) {
|
func encOpFor(rt reflect.Type) (encOp, int, os.Error) {
|
||||||
|
@ -183,7 +183,6 @@ package gob
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes";
|
"bytes";
|
||||||
"gob";
|
|
||||||
"io";
|
"io";
|
||||||
"os";
|
"os";
|
||||||
"reflect";
|
"reflect";
|
||||||
|
@ -6,7 +6,6 @@ package gob
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes";
|
"bytes";
|
||||||
"gob";
|
|
||||||
"io";
|
"io";
|
||||||
"os";
|
"os";
|
||||||
"reflect";
|
"reflect";
|
||||||
|
@ -104,16 +104,25 @@ func (t *commonType) Name() string {
|
|||||||
return t.name
|
return t.name
|
||||||
}
|
}
|
||||||
|
|
||||||
// Basic type identifiers, predefined.
|
// Create and check predefined types
|
||||||
var tBool typeId
|
// The string for tBytes is "bytes" not "[]byte" to signify its specialness.
|
||||||
var tInt typeId
|
|
||||||
var tUint typeId
|
var tBool = bootstrapType("bool", false, 1)
|
||||||
var tFloat typeId
|
var tInt = bootstrapType("int", int(0), 2)
|
||||||
var tString typeId
|
var tUint = bootstrapType("uint", uint(0), 3)
|
||||||
var tBytes typeId
|
var tFloat = bootstrapType("float", float64(0), 4)
|
||||||
|
var tBytes = bootstrapType("bytes", make([]byte, 0), 5)
|
||||||
|
var tString = bootstrapType("string", "", 6)
|
||||||
|
|
||||||
// Predefined because it's needed by the Decoder
|
// Predefined because it's needed by the Decoder
|
||||||
var tWireType typeId
|
var tWireType = getTypeInfoNoError(reflect.Typeof(wireType{})).id
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
checkId(7, tWireType);
|
||||||
|
checkId(8, getTypeInfoNoError(reflect.Typeof(structType{})).id);
|
||||||
|
checkId(9, getTypeInfoNoError(reflect.Typeof(commonType{})).id);
|
||||||
|
checkId(10, getTypeInfoNoError(reflect.Typeof(fieldType{})).id);
|
||||||
|
}
|
||||||
|
|
||||||
// Array type
|
// Array type
|
||||||
type arrayType struct {
|
type arrayType struct {
|
||||||
@ -201,9 +210,6 @@ func newStructType(name string) *structType {
|
|||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Construction
|
|
||||||
func getType(name string, rt reflect.Type) (gobType, os.Error)
|
|
||||||
|
|
||||||
// Step through the indirections on a type to discover the base type.
|
// Step through the indirections on a type to discover the base type.
|
||||||
// Return the number of indirections.
|
// Return the number of indirections.
|
||||||
func indirect(t reflect.Type) (rt reflect.Type, count int) {
|
func indirect(t reflect.Type) (rt reflect.Type, count int) {
|
||||||
@ -367,8 +373,6 @@ func (w *wireType) name() string {
|
|||||||
return w.s.name
|
return w.s.name
|
||||||
}
|
}
|
||||||
|
|
||||||
type decEngine struct // defined in decode.go
|
|
||||||
type encEngine struct // defined in encode.go
|
|
||||||
type typeInfo struct {
|
type typeInfo struct {
|
||||||
id typeId;
|
id typeId;
|
||||||
encoder *encEngine;
|
encoder *encEngine;
|
||||||
@ -407,19 +411,3 @@ func getTypeInfoNoError(rt reflect.Type) *typeInfo {
|
|||||||
}
|
}
|
||||||
return t
|
return t
|
||||||
}
|
}
|
||||||
|
|
||||||
func init() {
|
|
||||||
// Create and check predefined types
|
|
||||||
tBool = bootstrapType("bool", false, 1);
|
|
||||||
tInt = bootstrapType("int", int(0), 2);
|
|
||||||
tUint = bootstrapType("uint", uint(0), 3);
|
|
||||||
tFloat = bootstrapType("float", float64(0), 4);
|
|
||||||
// The string for tBytes is "bytes" not "[]byte" to signify its specialness.
|
|
||||||
tBytes = bootstrapType("bytes", make([]byte, 0), 5);
|
|
||||||
tString= bootstrapType("string", "", 6);
|
|
||||||
tWireType = getTypeInfoNoError(reflect.Typeof(wireType{})).id;
|
|
||||||
checkId(7, tWireType);
|
|
||||||
checkId(8, getTypeInfoNoError(reflect.Typeof(structType{})).id);
|
|
||||||
checkId(9, getTypeInfoNoError(reflect.Typeof(commonType{})).id);
|
|
||||||
checkId(10, getTypeInfoNoError(reflect.Typeof(fieldType{})).id);
|
|
||||||
}
|
|
||||||
|
@ -5,7 +5,6 @@
|
|||||||
package gob
|
package gob
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"gob";
|
|
||||||
"os";
|
"os";
|
||||||
"reflect";
|
"reflect";
|
||||||
"testing";
|
"testing";
|
||||||
|
Loading…
Reference in New Issue
Block a user