Quellcode durchsuchen

goprotobuf: start making it build with the go tool instead of make.
Work in progress.
This is sufficient to build, install, and test the proto library, and
to build and install the compiler plugin.
The tests for the plugin are disabled; they will require major work in a separate CL.

The compiler directory is now called protoc-gen-go so the binary has the right name.
The test.pb.go file for the proto tests is now checked in, for simplicity.

R=golang-dev, dsymonds
CC=golang-dev
http://codereview.appspot.com/5645087

Rob Pike vor 14 Jahren
Ursprung
Commit
b7907bf684
38 geänderte Dateien mit 689 neuen und 507 gelöschten Zeilen
  1. 0 6
      Make.protobuf
  2. 7 24
      Makefile
  3. 6 24
      proto/Makefile
  4. 1 1
      proto/all_test.go
  5. 1 1
      proto/clone_test.go
  6. 1 1
      proto/equal_test.go
  7. 7 10
      proto/testdata/Makefile
  8. 82 0
      proto/testdata/golden_test.go
  9. 540 0
      proto/testdata/test.pb.go
  10. 0 393
      proto/testdata/test.pb.go.golden
  11. 1 1
      proto/testdata/test.proto
  12. 5 5
      proto/text_parser_test.go
  13. 2 2
      proto/text_test.go
  14. 0 9
      protoc-gen-go/Makefile
  15. 0 0
      protoc-gen-go/descriptor/Makefile
  16. 0 0
      protoc-gen-go/descriptor/descriptor.pb.go
  17. 0 0
      protoc-gen-go/descriptor/descriptor.pb.golden
  18. 0 0
      protoc-gen-go/doc.go
  19. 0 0
      protoc-gen-go/generator/Makefile
  20. 2 2
      protoc-gen-go/generator/generator.go
  21. 1 1
      protoc-gen-go/main.go
  22. 0 0
      protoc-gen-go/plugin/Makefile
  23. 1 1
      protoc-gen-go/plugin/plugin.pb.go
  24. 0 0
      protoc-gen-go/plugin/plugin.pb.golden
  25. 32 26
      protoc-gen-go/testdata/Makefile
  26. 0 0
      protoc-gen-go/testdata/extension_base.proto
  27. 0 0
      protoc-gen-go/testdata/extension_extra.proto
  28. 0 0
      protoc-gen-go/testdata/extension_test.go
  29. 0 0
      protoc-gen-go/testdata/extension_user.proto
  30. 0 0
      protoc-gen-go/testdata/imp.pb.go.golden
  31. 0 0
      protoc-gen-go/testdata/imp.proto
  32. 0 0
      protoc-gen-go/testdata/imp2.proto
  33. 0 0
      protoc-gen-go/testdata/main.go
  34. 0 0
      protoc-gen-go/testdata/multi1.proto
  35. 0 0
      protoc-gen-go/testdata/multi2.proto
  36. 0 0
      protoc-gen-go/testdata/multi3.proto
  37. 0 0
      protoc-gen-go/testdata/test.pb.go.golden
  38. 0 0
      protoc-gen-go/testdata/test.proto

+ 0 - 6
Make.protobuf

@@ -33,12 +33,6 @@
 # (Google protocol buffer descriptions).
 # Typical use if myproto.proto is a file in package mypackage in this directory:
 #
-#	include $(GOROOT)/src/Make.inc
-#	TARG=mypackage
-#	GOFILES=\
-#		myproto.pb.go
-#
-#	include $(GOROOT)/src/Make.pkg
 #	include $(GOROOT)/src/pkg/code.google.com/p/goprotobuf/Make.protobuf
 
 %.pb.go:	%.proto

+ 7 - 24
Makefile

@@ -30,36 +30,19 @@
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 
-include $(GOROOT)/src/Make.inc
-
 all:	install
 
 install:
-	cd proto && gomake install
-	cd compiler/descriptor && gomake install
-	cd compiler/plugin && gomake install
-	cd compiler && gomake install
+	go install ./proto
+	go install ./protoc-gen-go
 
 test:
-	cd proto && gomake test
-	cd compiler && gomake test
+	go test ./proto
+	echo compiler tests are disabled
+	# cd protoc-gen-go && go test
 
 clean:
-	cd proto && gomake clean
-	cd proto/testdata && gomake clean
-	cd compiler && gomake clean
-	cd compiler/descriptor && gomake clean
-	cd compiler/plugin && gomake clean
-	cd compiler/testdata && gomake clean
-	cd compiler/descriptor && gomake clean
-	cd compiler/plugin && gomake clean
+	go clean ./...
 
 nuke:
-	cd proto && gomake nuke
-	cd proto/testdata && gomake nuke
-	cd compiler/descriptor && gomake nuke
-	cd compiler/plugin && gomake nuke
-	cd compiler && gomake nuke
-	cd compiler/testdata && gomake nuke
-	cd compiler/descriptor && gomake nuke
-	cd compiler/plugin && gomake nuke
+	go clean -i ./...

+ 6 - 24
proto/Makefile

@@ -29,30 +29,12 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
+install:
+	go install
 
-include $(GOROOT)/src/Make.inc
+test: install generate-test-pbs
+	go test
 
-TARG=code.google.com/p/goprotobuf/proto
-GOFILES=\
-	clone.go\
-	decode.go\
-	encode.go\
-	equal.go\
-	extensions.go\
-	lib.go\
-	message_set.go\
-	properties.go\
-	text.go\
-	text_parser.go\
 
-include $(GOROOT)/src/Make.pkg
-
-# We need to compile the .pb.gos, which import this package, so
-# to run the test we must make install here and then make in the
-# testdata directory.
-test: compile-test-pbs
-
-testshort: compile-test-pbs
-
-compile-test-pbs:
-	make install && cd testdata && make nuke && make
+generate-test-pbs:
+	make install && cd testdata && make

+ 1 - 1
proto/all_test.go

@@ -43,8 +43,8 @@ import (
 	"testing"
 	"time"
 
-	. "./testdata/_obj/test_proto"
 	. "code.google.com/p/goprotobuf/proto"
+	. "code.google.com/p/goprotobuf/proto/testdata"
 )
 
 var globalO *Buffer

+ 1 - 1
proto/clone_test.go

@@ -37,7 +37,7 @@ import (
 
 	"code.google.com/p/goprotobuf/proto"
 
-	pb "./testdata/_obj/test_proto"
+	pb "code.google.com/p/goprotobuf/proto/testdata"
 )
 
 var cloneTestMessage = &pb.MyMessage{

+ 1 - 1
proto/equal_test.go

@@ -35,8 +35,8 @@ import (
 	"log"
 	"testing"
 
-	pb "./testdata/_obj/test_proto"
 	. "code.google.com/p/goprotobuf/proto"
+	pb "code.google.com/p/goprotobuf/proto/testdata"
 )
 
 // Four identical base messages.

+ 7 - 10
proto/testdata/Makefile

@@ -30,21 +30,18 @@
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 
-include $(GOROOT)/src/Make.inc
 include ../../Make.protobuf
 
-TARG=test_proto
-GOFILES=\
-	test.pb.go\
+all:	regenerate
 
-include $(GOROOT)/src/Make.pkg
-
-CLEANFILES+=test.pb.go
-
-# These rules are just aids to development. Not needed for testing.
 regenerate:
-	rm test.pb.go
+	rm -f test.pb.go
 	make test.pb.go
+	
+# The following rules are just aids to development. Not needed for typical testing.
+
+diff:	regenerate
+	hg diff test.pb.go
 
 restore:
 	cp test.pb.go.golden test.pb.go

+ 82 - 0
proto/testdata/golden_test.go

@@ -0,0 +1,82 @@
+// Go support for Protocol Buffers - Google's data interchange format
+//
+// Copyright 2013 Google Inc.  All rights reserved.
+// http://code.google.com/p/goprotobuf/
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+//     * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//     * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+//     * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+// Verify that the compiler output for test.proto is unchanged.
+
+package testdata
+
+import (
+	"crypto/sha1"
+	"fmt"
+	"io/ioutil"
+	"os"
+	"os/exec"
+	"testing"
+)
+
+// sum returns in string form (for easy comparison) the SHA-1 hash of the named file.
+func sum(t *testing.T, name string) string {
+	data, err := ioutil.ReadFile(name)
+	if err != nil {
+		t.Fatal(err)
+	}
+	hash := sha1.New()
+	_, err = hash.Write(data)
+	if err != nil {
+		t.Fatal(err)
+	}
+	return fmt.Sprintf("% x", hash.Sum(nil))
+}
+
+func run(t *testing.T, name string, args ...string) {
+	cmd := exec.Command(name, args...)
+	cmd.Stdin = os.Stdin
+	cmd.Stdout = os.Stdout
+	cmd.Stderr = os.Stderr
+	err := cmd.Run()
+	if err != nil {
+		t.Fatal(err)
+	}
+}
+
+func TestGolden(t *testing.T) {
+	// Compute the original checksum.
+	goldenSum := sum(t, "test.pb.go")
+	// Run the proto compiler.
+	run(t, "protoc", "--go_out=.", "test.proto")
+	// Compute the new checksum.
+	newSum := sum(t, "test.pb.go")
+	// Verify
+	if newSum != goldenSum {
+		run(t, "hg", "diff", "test.pb.go")
+		t.Fatal("Code generated by protoc-gen-go has changed; update test.pb.go")
+	}
+}

+ 540 - 0
proto/testdata/test.pb.go

@@ -0,0 +1,540 @@
+// Code generated by protoc-gen-go from "test.proto"
+// DO NOT EDIT!
+
+package testdata
+
+import proto "code.google.com/p/goprotobuf/proto"
+import "math"
+
+// Reference proto and math imports to suppress error if they are not otherwise used.
+var _ = proto.GetString
+var _ = math.Inf
+
+type FOO int32
+
+const (
+	FOO_FOO1 FOO = 1
+)
+
+var FOO_name = map[int32]string{
+	1: "FOO1",
+}
+var FOO_value = map[string]int32{
+	"FOO1": 1,
+}
+
+func NewFOO(x FOO) *FOO {
+	e := FOO(x)
+	return &e
+}
+func (x FOO) String() string {
+	return proto.EnumName(FOO_name, int32(x))
+}
+
+type GoTest_KIND int32
+
+const (
+	GoTest_VOID        GoTest_KIND = 0
+	GoTest_BOOL        GoTest_KIND = 1
+	GoTest_BYTES       GoTest_KIND = 2
+	GoTest_FINGERPRINT GoTest_KIND = 3
+	GoTest_FLOAT       GoTest_KIND = 4
+	GoTest_INT         GoTest_KIND = 5
+	GoTest_STRING      GoTest_KIND = 6
+	GoTest_TIME        GoTest_KIND = 7
+	GoTest_TUPLE       GoTest_KIND = 8
+	GoTest_ARRAY       GoTest_KIND = 9
+	GoTest_MAP         GoTest_KIND = 10
+	GoTest_TABLE       GoTest_KIND = 11
+	GoTest_FUNCTION    GoTest_KIND = 12
+)
+
+var GoTest_KIND_name = map[int32]string{
+	0:  "VOID",
+	1:  "BOOL",
+	2:  "BYTES",
+	3:  "FINGERPRINT",
+	4:  "FLOAT",
+	5:  "INT",
+	6:  "STRING",
+	7:  "TIME",
+	8:  "TUPLE",
+	9:  "ARRAY",
+	10: "MAP",
+	11: "TABLE",
+	12: "FUNCTION",
+}
+var GoTest_KIND_value = map[string]int32{
+	"VOID":        0,
+	"BOOL":        1,
+	"BYTES":       2,
+	"FINGERPRINT": 3,
+	"FLOAT":       4,
+	"INT":         5,
+	"STRING":      6,
+	"TIME":        7,
+	"TUPLE":       8,
+	"ARRAY":       9,
+	"MAP":         10,
+	"TABLE":       11,
+	"FUNCTION":    12,
+}
+
+func NewGoTest_KIND(x GoTest_KIND) *GoTest_KIND {
+	e := GoTest_KIND(x)
+	return &e
+}
+func (x GoTest_KIND) String() string {
+	return proto.EnumName(GoTest_KIND_name, int32(x))
+}
+
+type MyMessage_Color int32
+
+const (
+	MyMessage_RED   MyMessage_Color = 0
+	MyMessage_GREEN MyMessage_Color = 1
+	MyMessage_BLUE  MyMessage_Color = 2
+)
+
+var MyMessage_Color_name = map[int32]string{
+	0: "RED",
+	1: "GREEN",
+	2: "BLUE",
+}
+var MyMessage_Color_value = map[string]int32{
+	"RED":   0,
+	"GREEN": 1,
+	"BLUE":  2,
+}
+
+func NewMyMessage_Color(x MyMessage_Color) *MyMessage_Color {
+	e := MyMessage_Color(x)
+	return &e
+}
+func (x MyMessage_Color) String() string {
+	return proto.EnumName(MyMessage_Color_name, int32(x))
+}
+
+type Defaults_Color int32
+
+const (
+	Defaults_RED   Defaults_Color = 0
+	Defaults_GREEN Defaults_Color = 1
+	Defaults_BLUE  Defaults_Color = 2
+)
+
+var Defaults_Color_name = map[int32]string{
+	0: "RED",
+	1: "GREEN",
+	2: "BLUE",
+}
+var Defaults_Color_value = map[string]int32{
+	"RED":   0,
+	"GREEN": 1,
+	"BLUE":  2,
+}
+
+func NewDefaults_Color(x Defaults_Color) *Defaults_Color {
+	e := Defaults_Color(x)
+	return &e
+}
+func (x Defaults_Color) String() string {
+	return proto.EnumName(Defaults_Color_name, int32(x))
+}
+
+type RepeatedEnum_Color int32
+
+const (
+	RepeatedEnum_RED RepeatedEnum_Color = 1
+)
+
+var RepeatedEnum_Color_name = map[int32]string{
+	1: "RED",
+}
+var RepeatedEnum_Color_value = map[string]int32{
+	"RED": 1,
+}
+
+func NewRepeatedEnum_Color(x RepeatedEnum_Color) *RepeatedEnum_Color {
+	e := RepeatedEnum_Color(x)
+	return &e
+}
+func (x RepeatedEnum_Color) String() string {
+	return proto.EnumName(RepeatedEnum_Color_name, int32(x))
+}
+
+type GoEnum struct {
+	Foo              *FOO   `protobuf:"varint,1,req,name=foo,enum=testdata.FOO" json:"foo,omitempty"`
+	XXX_unrecognized []byte `json:",omitempty"`
+}
+
+func (this *GoEnum) Reset()         { *this = GoEnum{} }
+func (this *GoEnum) String() string { return proto.CompactTextString(this) }
+
+type GoTestField struct {
+	Label            *string `protobuf:"bytes,1,req" json:"Label,omitempty"`
+	Type             *string `protobuf:"bytes,2,req" json:"Type,omitempty"`
+	XXX_unrecognized []byte  `json:",omitempty"`
+}
+
+func (this *GoTestField) Reset()         { *this = GoTestField{} }
+func (this *GoTestField) String() string { return proto.CompactTextString(this) }
+
+type GoTest struct {
+	Kind                    *GoTest_KIND            `protobuf:"varint,1,req,enum=testdata.GoTest_KIND" json:"Kind,omitempty"`
+	Table                   *string                 `protobuf:"bytes,2,opt" json:"Table,omitempty"`
+	Param                   *int32                  `protobuf:"varint,3,opt" json:"Param,omitempty"`
+	RequiredField           *GoTestField            `protobuf:"bytes,4,req" json:"RequiredField,omitempty"`
+	RepeatedField           []*GoTestField          `protobuf:"bytes,5,rep" json:"RepeatedField,omitempty"`
+	OptionalField           *GoTestField            `protobuf:"bytes,6,opt" json:"OptionalField,omitempty"`
+	F_BoolRequired          *bool                   `protobuf:"varint,10,req,name=F_Bool_required" json:"F_Bool_required,omitempty"`
+	F_Int32Required         *int32                  `protobuf:"varint,11,req,name=F_Int32_required" json:"F_Int32_required,omitempty"`
+	F_Int64Required         *int64                  `protobuf:"varint,12,req,name=F_Int64_required" json:"F_Int64_required,omitempty"`
+	F_Fixed32Required       *uint32                 `protobuf:"fixed32,13,req,name=F_Fixed32_required" json:"F_Fixed32_required,omitempty"`
+	F_Fixed64Required       *uint64                 `protobuf:"fixed64,14,req,name=F_Fixed64_required" json:"F_Fixed64_required,omitempty"`
+	F_Uint32Required        *uint32                 `protobuf:"varint,15,req,name=F_Uint32_required" json:"F_Uint32_required,omitempty"`
+	F_Uint64Required        *uint64                 `protobuf:"varint,16,req,name=F_Uint64_required" json:"F_Uint64_required,omitempty"`
+	F_FloatRequired         *float32                `protobuf:"fixed32,17,req,name=F_Float_required" json:"F_Float_required,omitempty"`
+	F_DoubleRequired        *float64                `protobuf:"fixed64,18,req,name=F_Double_required" json:"F_Double_required,omitempty"`
+	F_StringRequired        *string                 `protobuf:"bytes,19,req,name=F_String_required" json:"F_String_required,omitempty"`
+	F_BytesRequired         []byte                  `protobuf:"bytes,101,req,name=F_Bytes_required" json:"F_Bytes_required,omitempty"`
+	F_Sint32Required        *int32                  `protobuf:"zigzag32,102,req,name=F_Sint32_required" json:"F_Sint32_required,omitempty"`
+	F_Sint64Required        *int64                  `protobuf:"zigzag64,103,req,name=F_Sint64_required" json:"F_Sint64_required,omitempty"`
+	F_BoolRepeated          []bool                  `protobuf:"varint,20,rep,name=F_Bool_repeated" json:"F_Bool_repeated,omitempty"`
+	F_Int32Repeated         []int32                 `protobuf:"varint,21,rep,name=F_Int32_repeated" json:"F_Int32_repeated,omitempty"`
+	F_Int64Repeated         []int64                 `protobuf:"varint,22,rep,name=F_Int64_repeated" json:"F_Int64_repeated,omitempty"`
+	F_Fixed32Repeated       []uint32                `protobuf:"fixed32,23,rep,name=F_Fixed32_repeated" json:"F_Fixed32_repeated,omitempty"`
+	F_Fixed64Repeated       []uint64                `protobuf:"fixed64,24,rep,name=F_Fixed64_repeated" json:"F_Fixed64_repeated,omitempty"`
+	F_Uint32Repeated        []uint32                `protobuf:"varint,25,rep,name=F_Uint32_repeated" json:"F_Uint32_repeated,omitempty"`
+	F_Uint64Repeated        []uint64                `protobuf:"varint,26,rep,name=F_Uint64_repeated" json:"F_Uint64_repeated,omitempty"`
+	F_FloatRepeated         []float32               `protobuf:"fixed32,27,rep,name=F_Float_repeated" json:"F_Float_repeated,omitempty"`
+	F_DoubleRepeated        []float64               `protobuf:"fixed64,28,rep,name=F_Double_repeated" json:"F_Double_repeated,omitempty"`
+	F_StringRepeated        []string                `protobuf:"bytes,29,rep,name=F_String_repeated" json:"F_String_repeated,omitempty"`
+	F_BytesRepeated         [][]byte                `protobuf:"bytes,201,rep,name=F_Bytes_repeated" json:"F_Bytes_repeated,omitempty"`
+	F_Sint32Repeated        []int32                 `protobuf:"zigzag32,202,rep,name=F_Sint32_repeated" json:"F_Sint32_repeated,omitempty"`
+	F_Sint64Repeated        []int64                 `protobuf:"zigzag64,203,rep,name=F_Sint64_repeated" json:"F_Sint64_repeated,omitempty"`
+	F_BoolOptional          *bool                   `protobuf:"varint,30,opt,name=F_Bool_optional" json:"F_Bool_optional,omitempty"`
+	F_Int32Optional         *int32                  `protobuf:"varint,31,opt,name=F_Int32_optional" json:"F_Int32_optional,omitempty"`
+	F_Int64Optional         *int64                  `protobuf:"varint,32,opt,name=F_Int64_optional" json:"F_Int64_optional,omitempty"`
+	F_Fixed32Optional       *uint32                 `protobuf:"fixed32,33,opt,name=F_Fixed32_optional" json:"F_Fixed32_optional,omitempty"`
+	F_Fixed64Optional       *uint64                 `protobuf:"fixed64,34,opt,name=F_Fixed64_optional" json:"F_Fixed64_optional,omitempty"`
+	F_Uint32Optional        *uint32                 `protobuf:"varint,35,opt,name=F_Uint32_optional" json:"F_Uint32_optional,omitempty"`
+	F_Uint64Optional        *uint64                 `protobuf:"varint,36,opt,name=F_Uint64_optional" json:"F_Uint64_optional,omitempty"`
+	F_FloatOptional         *float32                `protobuf:"fixed32,37,opt,name=F_Float_optional" json:"F_Float_optional,omitempty"`
+	F_DoubleOptional        *float64                `protobuf:"fixed64,38,opt,name=F_Double_optional" json:"F_Double_optional,omitempty"`
+	F_StringOptional        *string                 `protobuf:"bytes,39,opt,name=F_String_optional" json:"F_String_optional,omitempty"`
+	F_BytesOptional         []byte                  `protobuf:"bytes,301,opt,name=F_Bytes_optional" json:"F_Bytes_optional,omitempty"`
+	F_Sint32Optional        *int32                  `protobuf:"zigzag32,302,opt,name=F_Sint32_optional" json:"F_Sint32_optional,omitempty"`
+	F_Sint64Optional        *int64                  `protobuf:"zigzag64,303,opt,name=F_Sint64_optional" json:"F_Sint64_optional,omitempty"`
+	F_BoolDefaulted         *bool                   `protobuf:"varint,40,opt,name=F_Bool_defaulted,def=1" json:"F_Bool_defaulted,omitempty"`
+	F_Int32Defaulted        *int32                  `protobuf:"varint,41,opt,name=F_Int32_defaulted,def=32" json:"F_Int32_defaulted,omitempty"`
+	F_Int64Defaulted        *int64                  `protobuf:"varint,42,opt,name=F_Int64_defaulted,def=64" json:"F_Int64_defaulted,omitempty"`
+	F_Fixed32Defaulted      *uint32                 `protobuf:"fixed32,43,opt,name=F_Fixed32_defaulted,def=320" json:"F_Fixed32_defaulted,omitempty"`
+	F_Fixed64Defaulted      *uint64                 `protobuf:"fixed64,44,opt,name=F_Fixed64_defaulted,def=640" json:"F_Fixed64_defaulted,omitempty"`
+	F_Uint32Defaulted       *uint32                 `protobuf:"varint,45,opt,name=F_Uint32_defaulted,def=3200" json:"F_Uint32_defaulted,omitempty"`
+	F_Uint64Defaulted       *uint64                 `protobuf:"varint,46,opt,name=F_Uint64_defaulted,def=6400" json:"F_Uint64_defaulted,omitempty"`
+	F_FloatDefaulted        *float32                `protobuf:"fixed32,47,opt,name=F_Float_defaulted,def=314159" json:"F_Float_defaulted,omitempty"`
+	F_DoubleDefaulted       *float64                `protobuf:"fixed64,48,opt,name=F_Double_defaulted,def=271828" json:"F_Double_defaulted,omitempty"`
+	F_StringDefaulted       *string                 `protobuf:"bytes,49,opt,name=F_String_defaulted,def=hello, \"world!\"\n" json:"F_String_defaulted,omitempty"`
+	F_BytesDefaulted        []byte                  `protobuf:"bytes,401,opt,name=F_Bytes_defaulted,def=Bignose" json:"F_Bytes_defaulted,omitempty"`
+	F_Sint32Defaulted       *int32                  `protobuf:"zigzag32,402,opt,name=F_Sint32_defaulted,def=-32" json:"F_Sint32_defaulted,omitempty"`
+	F_Sint64Defaulted       *int64                  `protobuf:"zigzag64,403,opt,name=F_Sint64_defaulted,def=-64" json:"F_Sint64_defaulted,omitempty"`
+	F_BoolRepeatedPacked    []bool                  `protobuf:"varint,50,rep,packed,name=F_Bool_repeated_packed" json:"F_Bool_repeated_packed,omitempty"`
+	F_Int32RepeatedPacked   []int32                 `protobuf:"varint,51,rep,packed,name=F_Int32_repeated_packed" json:"F_Int32_repeated_packed,omitempty"`
+	F_Int64RepeatedPacked   []int64                 `protobuf:"varint,52,rep,packed,name=F_Int64_repeated_packed" json:"F_Int64_repeated_packed,omitempty"`
+	F_Fixed32RepeatedPacked []uint32                `protobuf:"fixed32,53,rep,packed,name=F_Fixed32_repeated_packed" json:"F_Fixed32_repeated_packed,omitempty"`
+	F_Fixed64RepeatedPacked []uint64                `protobuf:"fixed64,54,rep,packed,name=F_Fixed64_repeated_packed" json:"F_Fixed64_repeated_packed,omitempty"`
+	F_Uint32RepeatedPacked  []uint32                `protobuf:"varint,55,rep,packed,name=F_Uint32_repeated_packed" json:"F_Uint32_repeated_packed,omitempty"`
+	F_Uint64RepeatedPacked  []uint64                `protobuf:"varint,56,rep,packed,name=F_Uint64_repeated_packed" json:"F_Uint64_repeated_packed,omitempty"`
+	F_FloatRepeatedPacked   []float32               `protobuf:"fixed32,57,rep,packed,name=F_Float_repeated_packed" json:"F_Float_repeated_packed,omitempty"`
+	F_DoubleRepeatedPacked  []float64               `protobuf:"fixed64,58,rep,packed,name=F_Double_repeated_packed" json:"F_Double_repeated_packed,omitempty"`
+	F_Sint32RepeatedPacked  []int32                 `protobuf:"zigzag32,502,rep,packed,name=F_Sint32_repeated_packed" json:"F_Sint32_repeated_packed,omitempty"`
+	F_Sint64RepeatedPacked  []int64                 `protobuf:"zigzag64,503,rep,packed,name=F_Sint64_repeated_packed" json:"F_Sint64_repeated_packed,omitempty"`
+	Requiredgroup           *GoTest_RequiredGroup   `protobuf:"group,70,req,name=RequiredGroup" json:"requiredgroup,omitempty"`
+	Repeatedgroup           []*GoTest_RepeatedGroup `protobuf:"group,80,rep,name=RepeatedGroup" json:"repeatedgroup,omitempty"`
+	Optionalgroup           *GoTest_OptionalGroup   `protobuf:"group,90,opt,name=OptionalGroup" json:"optionalgroup,omitempty"`
+	XXX_unrecognized        []byte                  `json:",omitempty"`
+}
+
+func (this *GoTest) Reset()         { *this = GoTest{} }
+func (this *GoTest) String() string { return proto.CompactTextString(this) }
+
+const Default_GoTest_F_BoolDefaulted bool = true
+const Default_GoTest_F_Int32Defaulted int32 = 32
+const Default_GoTest_F_Int64Defaulted int64 = 64
+const Default_GoTest_F_Fixed32Defaulted uint32 = 320
+const Default_GoTest_F_Fixed64Defaulted uint64 = 640
+const Default_GoTest_F_Uint32Defaulted uint32 = 3200
+const Default_GoTest_F_Uint64Defaulted uint64 = 6400
+const Default_GoTest_F_FloatDefaulted float32 = 314159
+const Default_GoTest_F_DoubleDefaulted float64 = 271828
+const Default_GoTest_F_StringDefaulted string = "hello, \"world!\"\n"
+
+var Default_GoTest_F_BytesDefaulted []byte = []byte("Bignose")
+
+const Default_GoTest_F_Sint32Defaulted int32 = -32
+const Default_GoTest_F_Sint64Defaulted int64 = -64
+
+type GoTest_RequiredGroup struct {
+	RequiredField    *string `protobuf:"bytes,71,req" json:"RequiredField,omitempty"`
+	XXX_unrecognized []byte  `json:",omitempty"`
+}
+
+func (this *GoTest_RequiredGroup) Reset()         { *this = GoTest_RequiredGroup{} }
+func (this *GoTest_RequiredGroup) String() string { return proto.CompactTextString(this) }
+
+type GoTest_RepeatedGroup struct {
+	RequiredField    *string `protobuf:"bytes,81,req" json:"RequiredField,omitempty"`
+	XXX_unrecognized []byte  `json:",omitempty"`
+}
+
+func (this *GoTest_RepeatedGroup) Reset()         { *this = GoTest_RepeatedGroup{} }
+func (this *GoTest_RepeatedGroup) String() string { return proto.CompactTextString(this) }
+
+type GoTest_OptionalGroup struct {
+	RequiredField    *string `protobuf:"bytes,91,req" json:"RequiredField,omitempty"`
+	XXX_unrecognized []byte  `json:",omitempty"`
+}
+
+func (this *GoTest_OptionalGroup) Reset()         { *this = GoTest_OptionalGroup{} }
+func (this *GoTest_OptionalGroup) String() string { return proto.CompactTextString(this) }
+
+type GoSkipTest struct {
+	SkipInt32        *int32                `protobuf:"varint,11,req,name=skip_int32" json:"skip_int32,omitempty"`
+	SkipFixed32      *uint32               `protobuf:"fixed32,12,req,name=skip_fixed32" json:"skip_fixed32,omitempty"`
+	SkipFixed64      *uint64               `protobuf:"fixed64,13,req,name=skip_fixed64" json:"skip_fixed64,omitempty"`
+	SkipString       *string               `protobuf:"bytes,14,req,name=skip_string" json:"skip_string,omitempty"`
+	Skipgroup        *GoSkipTest_SkipGroup `protobuf:"group,15,req,name=SkipGroup" json:"skipgroup,omitempty"`
+	XXX_unrecognized []byte                `json:",omitempty"`
+}
+
+func (this *GoSkipTest) Reset()         { *this = GoSkipTest{} }
+func (this *GoSkipTest) String() string { return proto.CompactTextString(this) }
+
+type GoSkipTest_SkipGroup struct {
+	GroupInt32       *int32  `protobuf:"varint,16,req,name=group_int32" json:"group_int32,omitempty"`
+	GroupString      *string `protobuf:"bytes,17,req,name=group_string" json:"group_string,omitempty"`
+	XXX_unrecognized []byte  `json:",omitempty"`
+}
+
+func (this *GoSkipTest_SkipGroup) Reset()         { *this = GoSkipTest_SkipGroup{} }
+func (this *GoSkipTest_SkipGroup) String() string { return proto.CompactTextString(this) }
+
+type NonPackedTest struct {
+	A                []int32 `protobuf:"varint,1,rep,name=a" json:"a,omitempty"`
+	XXX_unrecognized []byte  `json:",omitempty"`
+}
+
+func (this *NonPackedTest) Reset()         { *this = NonPackedTest{} }
+func (this *NonPackedTest) String() string { return proto.CompactTextString(this) }
+
+type PackedTest struct {
+	B                []int32 `protobuf:"varint,1,rep,packed,name=b" json:"b,omitempty"`
+	XXX_unrecognized []byte  `json:",omitempty"`
+}
+
+func (this *PackedTest) Reset()         { *this = PackedTest{} }
+func (this *PackedTest) String() string { return proto.CompactTextString(this) }
+
+type MaxTag struct {
+	LastField        *string `protobuf:"bytes,536870911,opt,name=last_field" json:"last_field,omitempty"`
+	XXX_unrecognized []byte  `json:",omitempty"`
+}
+
+func (this *MaxTag) Reset()         { *this = MaxTag{} }
+func (this *MaxTag) String() string { return proto.CompactTextString(this) }
+
+type InnerMessage struct {
+	Host             *string `protobuf:"bytes,1,req,name=host" json:"host,omitempty"`
+	Port             *int32  `protobuf:"varint,2,opt,name=port,def=4000" json:"port,omitempty"`
+	Connected        *bool   `protobuf:"varint,3,opt,name=connected" json:"connected,omitempty"`
+	XXX_unrecognized []byte  `json:",omitempty"`
+}
+
+func (this *InnerMessage) Reset()         { *this = InnerMessage{} }
+func (this *InnerMessage) String() string { return proto.CompactTextString(this) }
+
+const Default_InnerMessage_Port int32 = 4000
+
+type OtherMessage struct {
+	Key              *int64        `protobuf:"varint,1,opt,name=key" json:"key,omitempty"`
+	Value            []byte        `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
+	Weight           *float32      `protobuf:"fixed32,3,opt,name=weight" json:"weight,omitempty"`
+	Inner            *InnerMessage `protobuf:"bytes,4,opt,name=inner" json:"inner,omitempty"`
+	XXX_unrecognized []byte        `json:",omitempty"`
+}
+
+func (this *OtherMessage) Reset()         { *this = OtherMessage{} }
+func (this *OtherMessage) String() string { return proto.CompactTextString(this) }
+
+type MyMessage struct {
+	Count            *int32                    `protobuf:"varint,1,req,name=count" json:"count,omitempty"`
+	Name             *string                   `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
+	Quote            *string                   `protobuf:"bytes,3,opt,name=quote" json:"quote,omitempty"`
+	Pet              []string                  `protobuf:"bytes,4,rep,name=pet" json:"pet,omitempty"`
+	Inner            *InnerMessage             `protobuf:"bytes,5,opt,name=inner" json:"inner,omitempty"`
+	Others           []*OtherMessage           `protobuf:"bytes,6,rep,name=others" json:"others,omitempty"`
+	Bikeshed         *MyMessage_Color          `protobuf:"varint,7,opt,name=bikeshed,enum=testdata.MyMessage_Color" json:"bikeshed,omitempty"`
+	Somegroup        *MyMessage_SomeGroup      `protobuf:"group,8,opt,name=SomeGroup" json:"somegroup,omitempty"`
+	RepBytes         [][]byte                  `protobuf:"bytes,10,rep,name=rep_bytes" json:"rep_bytes,omitempty"`
+	XXX_extensions   map[int32]proto.Extension `json:",omitempty"`
+	XXX_unrecognized []byte                    `json:",omitempty"`
+}
+
+func (this *MyMessage) Reset()         { *this = MyMessage{} }
+func (this *MyMessage) String() string { return proto.CompactTextString(this) }
+
+var extRange_MyMessage = []proto.ExtensionRange{
+	{100, 536870911},
+}
+
+func (*MyMessage) ExtensionRangeArray() []proto.ExtensionRange {
+	return extRange_MyMessage
+}
+func (this *MyMessage) ExtensionMap() map[int32]proto.Extension {
+	if this.XXX_extensions == nil {
+		this.XXX_extensions = make(map[int32]proto.Extension)
+	}
+	return this.XXX_extensions
+}
+
+type MyMessage_SomeGroup struct {
+	GroupField       *int32 `protobuf:"varint,9,opt,name=group_field" json:"group_field,omitempty"`
+	XXX_unrecognized []byte `json:",omitempty"`
+}
+
+func (this *MyMessage_SomeGroup) Reset()         { *this = MyMessage_SomeGroup{} }
+func (this *MyMessage_SomeGroup) String() string { return proto.CompactTextString(this) }
+
+type Ext struct {
+	Data             *string `protobuf:"bytes,1,opt,name=data" json:"data,omitempty"`
+	XXX_unrecognized []byte  `json:",omitempty"`
+}
+
+func (this *Ext) Reset()         { *this = Ext{} }
+func (this *Ext) String() string { return proto.CompactTextString(this) }
+
+var E_Ext_More = &proto.ExtensionDesc{
+	ExtendedType:  (*MyMessage)(nil),
+	ExtensionType: (*Ext)(nil),
+	Field:         103,
+	Name:          "testdata.Ext.more",
+	Tag:           "bytes,103,opt,name=more",
+}
+
+var E_Ext_Text = &proto.ExtensionDesc{
+	ExtendedType:  (*MyMessage)(nil),
+	ExtensionType: (*string)(nil),
+	Field:         104,
+	Name:          "testdata.Ext.text",
+	Tag:           "bytes,104,opt,name=text",
+}
+
+var E_Ext_Number = &proto.ExtensionDesc{
+	ExtendedType:  (*MyMessage)(nil),
+	ExtensionType: (*int32)(nil),
+	Field:         105,
+	Name:          "testdata.Ext.number",
+	Tag:           "varint,105,opt,name=number",
+}
+
+type MessageList struct {
+	Message          []*MessageList_Message `protobuf:"group,1,rep" json:"message,omitempty"`
+	XXX_unrecognized []byte                 `json:",omitempty"`
+}
+
+func (this *MessageList) Reset()         { *this = MessageList{} }
+func (this *MessageList) String() string { return proto.CompactTextString(this) }
+
+type MessageList_Message struct {
+	Name             *string `protobuf:"bytes,2,req,name=name" json:"name,omitempty"`
+	Count            *int32  `protobuf:"varint,3,req,name=count" json:"count,omitempty"`
+	XXX_unrecognized []byte  `json:",omitempty"`
+}
+
+func (this *MessageList_Message) Reset()         { *this = MessageList_Message{} }
+func (this *MessageList_Message) String() string { return proto.CompactTextString(this) }
+
+type Strings struct {
+	StringField      *string `protobuf:"bytes,1,opt,name=string_field" json:"string_field,omitempty"`
+	BytesField       []byte  `protobuf:"bytes,2,opt,name=bytes_field" json:"bytes_field,omitempty"`
+	XXX_unrecognized []byte  `json:",omitempty"`
+}
+
+func (this *Strings) Reset()         { *this = Strings{} }
+func (this *Strings) String() string { return proto.CompactTextString(this) }
+
+type Defaults struct {
+	F_Bool           *bool           `protobuf:"varint,1,opt,def=1" json:"F_Bool,omitempty"`
+	F_Int32          *int32          `protobuf:"varint,2,opt,def=32" json:"F_Int32,omitempty"`
+	F_Int64          *int64          `protobuf:"varint,3,opt,def=64" json:"F_Int64,omitempty"`
+	F_Fixed32        *uint32         `protobuf:"fixed32,4,opt,def=320" json:"F_Fixed32,omitempty"`
+	F_Fixed64        *uint64         `protobuf:"fixed64,5,opt,def=640" json:"F_Fixed64,omitempty"`
+	F_Uint32         *uint32         `protobuf:"varint,6,opt,def=3200" json:"F_Uint32,omitempty"`
+	F_Uint64         *uint64         `protobuf:"varint,7,opt,def=6400" json:"F_Uint64,omitempty"`
+	F_Float          *float32        `protobuf:"fixed32,8,opt,def=314159" json:"F_Float,omitempty"`
+	F_Double         *float64        `protobuf:"fixed64,9,opt,def=271828" json:"F_Double,omitempty"`
+	F_String         *string         `protobuf:"bytes,10,opt,def=hello, \"world!\"\n" json:"F_String,omitempty"`
+	F_Bytes          []byte          `protobuf:"bytes,11,opt,def=Bignose" json:"F_Bytes,omitempty"`
+	F_Sint32         *int32          `protobuf:"zigzag32,12,opt,def=-32" json:"F_Sint32,omitempty"`
+	F_Sint64         *int64          `protobuf:"zigzag64,13,opt,def=-64" json:"F_Sint64,omitempty"`
+	F_Enum           *Defaults_Color `protobuf:"varint,14,opt,enum=testdata.Defaults_Color,def=1" json:"F_Enum,omitempty"`
+	F_Pinf           *float32        `protobuf:"fixed32,15,opt,def=inf" json:"F_Pinf,omitempty"`
+	F_Ninf           *float32        `protobuf:"fixed32,16,opt,def=-inf" json:"F_Ninf,omitempty"`
+	F_Nan            *float32        `protobuf:"fixed32,17,opt,def=nan" json:"F_Nan,omitempty"`
+	Sub              *SubDefaults    `protobuf:"bytes,18,opt,name=sub" json:"sub,omitempty"`
+	XXX_unrecognized []byte          `json:",omitempty"`
+}
+
+func (this *Defaults) Reset()         { *this = Defaults{} }
+func (this *Defaults) String() string { return proto.CompactTextString(this) }
+
+const Default_Defaults_F_Bool bool = true
+const Default_Defaults_F_Int32 int32 = 32
+const Default_Defaults_F_Int64 int64 = 64
+const Default_Defaults_F_Fixed32 uint32 = 320
+const Default_Defaults_F_Fixed64 uint64 = 640
+const Default_Defaults_F_Uint32 uint32 = 3200
+const Default_Defaults_F_Uint64 uint64 = 6400
+const Default_Defaults_F_Float float32 = 314159
+const Default_Defaults_F_Double float64 = 271828
+const Default_Defaults_F_String string = "hello, \"world!\"\n"
+
+var Default_Defaults_F_Bytes []byte = []byte("Bignose")
+
+const Default_Defaults_F_Sint32 int32 = -32
+const Default_Defaults_F_Sint64 int64 = -64
+const Default_Defaults_F_Enum Defaults_Color = Defaults_GREEN
+
+var Default_Defaults_F_Pinf float32 = float32(math.Inf(1))
+var Default_Defaults_F_Ninf float32 = float32(math.Inf(-1))
+var Default_Defaults_F_Nan float32 = float32(math.NaN())
+
+type SubDefaults struct {
+	N                *int64 `protobuf:"varint,1,opt,name=n,def=7" json:"n,omitempty"`
+	XXX_unrecognized []byte `json:",omitempty"`
+}
+
+func (this *SubDefaults) Reset()         { *this = SubDefaults{} }
+func (this *SubDefaults) String() string { return proto.CompactTextString(this) }
+
+const Default_SubDefaults_N int64 = 7
+
+type RepeatedEnum struct {
+	Color            []RepeatedEnum_Color `protobuf:"varint,1,rep,name=color,enum=testdata.RepeatedEnum_Color" json:"color,omitempty"`
+	XXX_unrecognized []byte               `json:",omitempty"`
+}
+
+func (this *RepeatedEnum) Reset()         { *this = RepeatedEnum{} }
+func (this *RepeatedEnum) String() string { return proto.CompactTextString(this) }
+
+func init() {
+	proto.RegisterEnum("testdata.FOO", FOO_name, FOO_value)
+	proto.RegisterEnum("testdata.GoTest_KIND", GoTest_KIND_name, GoTest_KIND_value)
+	proto.RegisterEnum("testdata.MyMessage_Color", MyMessage_Color_name, MyMessage_Color_value)
+	proto.RegisterEnum("testdata.Defaults_Color", Defaults_Color_name, Defaults_Color_value)
+	proto.RegisterEnum("testdata.RepeatedEnum_Color", RepeatedEnum_Color_name, RepeatedEnum_Color_value)
+	proto.RegisterExtension(E_Ext_More)
+	proto.RegisterExtension(E_Ext_Text)
+	proto.RegisterExtension(E_Ext_Number)
+}

+ 0 - 393
proto/testdata/test.pb.go.golden

@@ -1,393 +0,0 @@
-// Code generated by protoc-gen-go from "test.proto"
-// DO NOT EDIT!
-
-package test_proto
-
-import proto "code.google.com/p/goprotobuf/proto"
-import "math"
-import "os"
-
-// Reference proto, math & os imports to suppress error if they are not otherwise used.
-var _ = proto.GetString
-var _ = math.Inf
-var _ os.Error
-
-
-type FOO int32
-
-const (
-	FOO_FOO1 = 1
-)
-
-var FOO_name = map[int32]string{
-	1: "FOO1",
-}
-var FOO_value = map[string]int32{
-	"FOO1": 1,
-}
-
-func NewFOO(x int32) *FOO {
-	e := FOO(x)
-	return &e
-}
-func (x FOO) String() string {
-	return proto.EnumName(FOO_name, int32(x))
-}
-
-type GoTest_KIND int32
-
-const (
-	GoTest_VOID		= 0
-	GoTest_BOOL		= 1
-	GoTest_BYTES		= 2
-	GoTest_FINGERPRINT	= 3
-	GoTest_FLOAT		= 4
-	GoTest_INT		= 5
-	GoTest_STRING		= 6
-	GoTest_TIME		= 7
-	GoTest_TUPLE		= 8
-	GoTest_ARRAY		= 9
-	GoTest_MAP		= 10
-	GoTest_TABLE		= 11
-	GoTest_FUNCTION		= 12
-)
-
-var GoTest_KIND_name = map[int32]string{
-	0:	"VOID",
-	1:	"BOOL",
-	2:	"BYTES",
-	3:	"FINGERPRINT",
-	4:	"FLOAT",
-	5:	"INT",
-	6:	"STRING",
-	7:	"TIME",
-	8:	"TUPLE",
-	9:	"ARRAY",
-	10:	"MAP",
-	11:	"TABLE",
-	12:	"FUNCTION",
-}
-var GoTest_KIND_value = map[string]int32{
-	"VOID":		0,
-	"BOOL":		1,
-	"BYTES":	2,
-	"FINGERPRINT":	3,
-	"FLOAT":	4,
-	"INT":		5,
-	"STRING":	6,
-	"TIME":		7,
-	"TUPLE":	8,
-	"ARRAY":	9,
-	"MAP":		10,
-	"TABLE":	11,
-	"FUNCTION":	12,
-}
-
-func NewGoTest_KIND(x int32) *GoTest_KIND {
-	e := GoTest_KIND(x)
-	return &e
-}
-func (x GoTest_KIND) String() string {
-	return proto.EnumName(GoTest_KIND_name, int32(x))
-}
-
-type MyMessage_Color int32
-
-const (
-	MyMessage_RED	= 0
-	MyMessage_GREEN	= 1
-	MyMessage_BLUE	= 2
-)
-
-var MyMessage_Color_name = map[int32]string{
-	0:	"RED",
-	1:	"GREEN",
-	2:	"BLUE",
-}
-var MyMessage_Color_value = map[string]int32{
-	"RED":		0,
-	"GREEN":	1,
-	"BLUE":		2,
-}
-
-func NewMyMessage_Color(x int32) *MyMessage_Color {
-	e := MyMessage_Color(x)
-	return &e
-}
-func (x MyMessage_Color) String() string {
-	return proto.EnumName(MyMessage_Color_name, int32(x))
-}
-
-type GoEnum struct {
-	Foo			*FOO	`protobuf:"varint,1,req,name=foo,enum=test_proto.FOO"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *GoEnum) Reset()		{ *this = GoEnum{} }
-func (this *GoEnum) String() string	{ return proto.CompactTextString(this) }
-
-type GoTestField struct {
-	Label			*string	`protobuf:"bytes,1,req"`
-	Type			*string	`protobuf:"bytes,2,req"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *GoTestField) Reset()		{ *this = GoTestField{} }
-func (this *GoTestField) String() string	{ return proto.CompactTextString(this) }
-
-type GoTest struct {
-	Kind			*int32			`protobuf:"varint,1,req"`
-	Table			*string			`protobuf:"bytes,2,opt"`
-	Param			*int32			`protobuf:"varint,3,opt"`
-	RequiredField		*GoTestField		`protobuf:"bytes,4,req"`
-	RepeatedField		[]*GoTestField		`protobuf:"bytes,5,rep"`
-	OptionalField		*GoTestField		`protobuf:"bytes,6,opt"`
-	F_BoolRequired		*bool			`protobuf:"varint,10,req,name=F_Bool_required"`
-	F_Int32Required		*int32			`protobuf:"varint,11,req,name=F_Int32_required"`
-	F_Int64Required		*int64			`protobuf:"varint,12,req,name=F_Int64_required"`
-	F_Fixed32Required	*uint32			`protobuf:"fixed32,13,req,name=F_Fixed32_required"`
-	F_Fixed64Required	*uint64			`protobuf:"fixed64,14,req,name=F_Fixed64_required"`
-	F_Uint32Required	*uint32			`protobuf:"varint,15,req,name=F_Uint32_required"`
-	F_Uint64Required	*uint64			`protobuf:"varint,16,req,name=F_Uint64_required"`
-	F_FloatRequired		*float32		`protobuf:"fixed32,17,req,name=F_Float_required"`
-	F_DoubleRequired	*float64		`protobuf:"fixed64,18,req,name=F_Double_required"`
-	F_StringRequired	*string			`protobuf:"bytes,19,req,name=F_String_required"`
-	F_BytesRequired		[]byte			`protobuf:"bytes,101,req,name=F_Bytes_required"`
-	F_Sint32Required	*int32			`protobuf:"zigzag32,102,req,name=F_Sint32_required"`
-	F_Sint64Required	*int64			`protobuf:"zigzag64,103,req,name=F_Sint64_required"`
-	F_BoolRepeated		[]bool			`protobuf:"varint,20,rep,name=F_Bool_repeated"`
-	F_Int32Repeated		[]int32			`protobuf:"varint,21,rep,name=F_Int32_repeated"`
-	F_Int64Repeated		[]int64			`protobuf:"varint,22,rep,name=F_Int64_repeated"`
-	F_Fixed32Repeated	[]uint32		`protobuf:"fixed32,23,rep,name=F_Fixed32_repeated"`
-	F_Fixed64Repeated	[]uint64		`protobuf:"fixed64,24,rep,name=F_Fixed64_repeated"`
-	F_Uint32Repeated	[]uint32		`protobuf:"varint,25,rep,name=F_Uint32_repeated"`
-	F_Uint64Repeated	[]uint64		`protobuf:"varint,26,rep,name=F_Uint64_repeated"`
-	F_FloatRepeated		[]float32		`protobuf:"fixed32,27,rep,name=F_Float_repeated"`
-	F_DoubleRepeated	[]float64		`protobuf:"fixed64,28,rep,name=F_Double_repeated"`
-	F_StringRepeated	[]string		`protobuf:"bytes,29,rep,name=F_String_repeated"`
-	F_BytesRepeated		[][]byte		`protobuf:"bytes,201,rep,name=F_Bytes_repeated"`
-	F_Sint32Repeated	[]int32			`protobuf:"zigzag32,202,rep,name=F_Sint32_repeated"`
-	F_Sint64Repeated	[]int64			`protobuf:"zigzag64,203,rep,name=F_Sint64_repeated"`
-	F_BoolOptional		*bool			`protobuf:"varint,30,opt,name=F_Bool_optional"`
-	F_Int32Optional		*int32			`protobuf:"varint,31,opt,name=F_Int32_optional"`
-	F_Int64Optional		*int64			`protobuf:"varint,32,opt,name=F_Int64_optional"`
-	F_Fixed32Optional	*uint32			`protobuf:"fixed32,33,opt,name=F_Fixed32_optional"`
-	F_Fixed64Optional	*uint64			`protobuf:"fixed64,34,opt,name=F_Fixed64_optional"`
-	F_Uint32Optional	*uint32			`protobuf:"varint,35,opt,name=F_Uint32_optional"`
-	F_Uint64Optional	*uint64			`protobuf:"varint,36,opt,name=F_Uint64_optional"`
-	F_FloatOptional		*float32		`protobuf:"fixed32,37,opt,name=F_Float_optional"`
-	F_DoubleOptional	*float64		`protobuf:"fixed64,38,opt,name=F_Double_optional"`
-	F_StringOptional	*string			`protobuf:"bytes,39,opt,name=F_String_optional"`
-	F_BytesOptional		[]byte			`protobuf:"bytes,301,opt,name=F_Bytes_optional"`
-	F_Sint32Optional	*int32			`protobuf:"zigzag32,302,opt,name=F_Sint32_optional"`
-	F_Sint64Optional	*int64			`protobuf:"zigzag64,303,opt,name=F_Sint64_optional"`
-	F_BoolDefaulted		*bool			`protobuf:"varint,40,opt,name=F_Bool_defaulted,def=1"`
-	F_Int32Defaulted	*int32			`protobuf:"varint,41,opt,name=F_Int32_defaulted,def=32"`
-	F_Int64Defaulted	*int64			`protobuf:"varint,42,opt,name=F_Int64_defaulted,def=64"`
-	F_Fixed32Defaulted	*uint32			`protobuf:"fixed32,43,opt,name=F_Fixed32_defaulted,def=320"`
-	F_Fixed64Defaulted	*uint64			`protobuf:"fixed64,44,opt,name=F_Fixed64_defaulted,def=640"`
-	F_Uint32Defaulted	*uint32			`protobuf:"varint,45,opt,name=F_Uint32_defaulted,def=3200"`
-	F_Uint64Defaulted	*uint64			`protobuf:"varint,46,opt,name=F_Uint64_defaulted,def=6400"`
-	F_FloatDefaulted	*float32		`protobuf:"fixed32,47,opt,name=F_Float_defaulted,def=314159"`
-	F_DoubleDefaulted	*float64		`protobuf:"fixed64,48,opt,name=F_Double_defaulted,def=271828"`
-	F_StringDefaulted	*string			`protobuf:"bytes,49,opt,name=F_String_defaulted,def=hello, \\\"world!\\\"\\n"`
-	F_BytesDefaulted	[]byte			`protobuf:"bytes,401,opt,name=F_Bytes_defaulted,def=Bignose"`
-	F_Sint32Defaulted	*int32			`protobuf:"zigzag32,402,opt,name=F_Sint32_defaulted,def=-32"`
-	F_Sint64Defaulted	*int64			`protobuf:"zigzag64,403,opt,name=F_Sint64_defaulted,def=-64"`
-	F_BoolRepeatedPacked	[]bool			`protobuf:"varint,50,rep,packed,name=F_Bool_repeated_packed"`
-	F_Int32RepeatedPacked	[]int32			`protobuf:"varint,51,rep,packed,name=F_Int32_repeated_packed"`
-	F_Int64RepeatedPacked	[]int64			`protobuf:"varint,52,rep,packed,name=F_Int64_repeated_packed"`
-	F_Fixed32RepeatedPacked	[]uint32		`protobuf:"fixed32,53,rep,packed,name=F_Fixed32_repeated_packed"`
-	F_Fixed64RepeatedPacked	[]uint64		`protobuf:"fixed64,54,rep,packed,name=F_Fixed64_repeated_packed"`
-	F_Uint32RepeatedPacked	[]uint32		`protobuf:"varint,55,rep,packed,name=F_Uint32_repeated_packed"`
-	F_Uint64RepeatedPacked	[]uint64		`protobuf:"varint,56,rep,packed,name=F_Uint64_repeated_packed"`
-	F_FloatRepeatedPacked	[]float32		`protobuf:"fixed32,57,rep,packed,name=F_Float_repeated_packed"`
-	F_DoubleRepeatedPacked	[]float64		`protobuf:"fixed64,58,rep,packed,name=F_Double_repeated_packed"`
-	F_Sint32RepeatedPacked	[]int32			`protobuf:"zigzag32,502,rep,packed,name=F_Sint32_repeated_packed"`
-	F_Sint64RepeatedPacked	[]int64			`protobuf:"zigzag64,503,rep,packed,name=F_Sint64_repeated_packed"`
-	Requiredgroup		*GoTest_RequiredGroup	`protobuf:"group,70,req,name=RequiredGroup"`
-	Repeatedgroup		[]*GoTest_RepeatedGroup	`protobuf:"group,80,rep,name=RepeatedGroup"`
-	Optionalgroup		*GoTest_OptionalGroup	`protobuf:"group,90,opt,name=OptionalGroup"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *GoTest) Reset()		{ *this = GoTest{} }
-func (this *GoTest) String() string	{ return proto.CompactTextString(this) }
-
-const Default_GoTest_F_BoolDefaulted bool = true
-const Default_GoTest_F_Int32Defaulted int32 = 32
-const Default_GoTest_F_Int64Defaulted int64 = 64
-const Default_GoTest_F_Fixed32Defaulted uint32 = 320
-const Default_GoTest_F_Fixed64Defaulted uint64 = 640
-const Default_GoTest_F_Uint32Defaulted uint32 = 3200
-const Default_GoTest_F_Uint64Defaulted uint64 = 6400
-const Default_GoTest_F_FloatDefaulted float32 = 314159
-const Default_GoTest_F_DoubleDefaulted float64 = 271828
-const Default_GoTest_F_StringDefaulted string = "hello, \"world!\"\n"
-
-var Default_GoTest_F_BytesDefaulted []byte = []byte("Bignose")
-
-const Default_GoTest_F_Sint32Defaulted int32 = -32
-const Default_GoTest_F_Sint64Defaulted int64 = -64
-
-type GoTest_RequiredGroup struct {
-	RequiredField		*string	`protobuf:"bytes,71,req"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *GoTest_RequiredGroup) Reset()		{ *this = GoTest_RequiredGroup{} }
-func (this *GoTest_RequiredGroup) String() string	{ return proto.CompactTextString(this) }
-
-type GoTest_RepeatedGroup struct {
-	RequiredField		*string	`protobuf:"bytes,81,req"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *GoTest_RepeatedGroup) Reset()		{ *this = GoTest_RepeatedGroup{} }
-func (this *GoTest_RepeatedGroup) String() string	{ return proto.CompactTextString(this) }
-
-type GoTest_OptionalGroup struct {
-	RequiredField		*string	`protobuf:"bytes,91,req"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *GoTest_OptionalGroup) Reset()		{ *this = GoTest_OptionalGroup{} }
-func (this *GoTest_OptionalGroup) String() string	{ return proto.CompactTextString(this) }
-
-type GoSkipTest struct {
-	SkipInt32		*int32			`protobuf:"varint,11,req,name=skip_int32"`
-	SkipFixed32		*uint32			`protobuf:"fixed32,12,req,name=skip_fixed32"`
-	SkipFixed64		*uint64			`protobuf:"fixed64,13,req,name=skip_fixed64"`
-	SkipString		*string			`protobuf:"bytes,14,req,name=skip_string"`
-	Skipgroup		*GoSkipTest_SkipGroup	`protobuf:"group,15,req,name=SkipGroup"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *GoSkipTest) Reset()		{ *this = GoSkipTest{} }
-func (this *GoSkipTest) String() string	{ return proto.CompactTextString(this) }
-
-type GoSkipTest_SkipGroup struct {
-	GroupInt32		*int32	`protobuf:"varint,16,req,name=group_int32"`
-	GroupString		*string	`protobuf:"bytes,17,req,name=group_string"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *GoSkipTest_SkipGroup) Reset()		{ *this = GoSkipTest_SkipGroup{} }
-func (this *GoSkipTest_SkipGroup) String() string	{ return proto.CompactTextString(this) }
-
-type NonPackedTest struct {
-	A			[]int32	`protobuf:"varint,1,rep,name=a"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *NonPackedTest) Reset()		{ *this = NonPackedTest{} }
-func (this *NonPackedTest) String() string	{ return proto.CompactTextString(this) }
-
-type PackedTest struct {
-	B			[]int32	`protobuf:"varint,1,rep,packed,name=b"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *PackedTest) Reset()		{ *this = PackedTest{} }
-func (this *PackedTest) String() string	{ return proto.CompactTextString(this) }
-
-type InnerMessage struct {
-	Host			*string	`protobuf:"bytes,1,req,name=host"`
-	Port			*int32	`protobuf:"varint,2,opt,name=port,def=4000"`
-	Connected		*bool	`protobuf:"varint,3,opt,name=connected"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *InnerMessage) Reset()		{ *this = InnerMessage{} }
-func (this *InnerMessage) String() string	{ return proto.CompactTextString(this) }
-
-const Default_InnerMessage_Port int32 = 4000
-
-type OtherMessage struct {
-	Key			*int64		`protobuf:"varint,1,opt,name=key"`
-	Value			[]byte		`protobuf:"bytes,2,opt,name=value"`
-	Weight			*float32	`protobuf:"fixed32,3,opt,name=weight"`
-	Inner			*InnerMessage	`protobuf:"bytes,4,opt,name=inner"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *OtherMessage) Reset()		{ *this = OtherMessage{} }
-func (this *OtherMessage) String() string	{ return proto.CompactTextString(this) }
-
-type MyMessage struct {
-	Count			*int32			`protobuf:"varint,1,req,name=count"`
-	Name			*string			`protobuf:"bytes,2,opt,name=name"`
-	Quote			*string			`protobuf:"bytes,3,opt,name=quote"`
-	Pet			[]string		`protobuf:"bytes,4,rep,name=pet"`
-	Inner			*InnerMessage		`protobuf:"bytes,5,opt,name=inner"`
-	Others			[]*OtherMessage		`protobuf:"bytes,6,rep,name=others"`
-	Bikeshed		*MyMessage_Color	`protobuf:"varint,7,opt,name=bikeshed,enum=test_proto.MyMessage_Color"`
-	Somegroup		*MyMessage_SomeGroup	`protobuf:"group,8,opt,name=SomeGroup"`
-	XXX_extensions		map[int32][]byte
-	XXX_unrecognized	[]byte
-}
-
-func (this *MyMessage) Reset()		{ *this = MyMessage{} }
-func (this *MyMessage) String() string	{ return proto.CompactTextString(this) }
-
-var extRange_MyMessage = []proto.ExtensionRange{
-	proto.ExtensionRange{100, 536870911},
-}
-
-func (*MyMessage) ExtensionRangeArray() []proto.ExtensionRange {
-	return extRange_MyMessage
-}
-func (this *MyMessage) ExtensionMap() map[int32][]byte {
-	if this.XXX_extensions == nil {
-		this.XXX_extensions = make(map[int32][]byte)
-	}
-	return this.XXX_extensions
-}
-
-type MyMessage_SomeGroup struct {
-	GroupField		*int32	`protobuf:"varint,9,opt,name=group_field"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *MyMessage_SomeGroup) Reset()		{ *this = MyMessage_SomeGroup{} }
-func (this *MyMessage_SomeGroup) String() string	{ return proto.CompactTextString(this) }
-
-type Ext struct {
-	Data			*string	`protobuf:"bytes,1,opt,name=data"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *Ext) Reset()		{ *this = Ext{} }
-func (this *Ext) String() string	{ return proto.CompactTextString(this) }
-
-var E_Ext_More = &proto.ExtensionDesc{
-	ExtendedType:	(*MyMessage)(nil),
-	ExtensionType:	(*Ext)(nil),
-	Field:		103,
-	Name:		"test_proto.more",
-	Tag:		"bytes,103,opt,name=more",
-}
-
-type MessageList struct {
-	Message			[]*MessageList_Message	`protobuf:"group,1,rep"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *MessageList) Reset()		{ *this = MessageList{} }
-func (this *MessageList) String() string	{ return proto.CompactTextString(this) }
-
-type MessageList_Message struct {
-	Name			*string	`protobuf:"bytes,2,req,name=name"`
-	Count			*int32	`protobuf:"varint,3,req,name=count"`
-	XXX_unrecognized	[]byte
-}
-
-func (this *MessageList_Message) Reset()		{ *this = MessageList_Message{} }
-func (this *MessageList_Message) String() string	{ return proto.CompactTextString(this) }
-
-func init() {
-	proto.RegisterEnum("test_proto.FOO", FOO_name, FOO_value)
-	proto.RegisterEnum("test_proto.GoTest_KIND", GoTest_KIND_name, GoTest_KIND_value)
-	proto.RegisterEnum("test_proto.MyMessage_Color", MyMessage_Color_name, MyMessage_Color_value)
-	proto.RegisterExtension(E_Ext_More)
-}

+ 1 - 1
proto/testdata/test.proto

@@ -33,7 +33,7 @@
 
 syntax = "proto2";
 
-package test_proto;
+package testdata;
 
 enum FOO { FOO1 = 1; };
 

+ 5 - 5
proto/text_parser_test.go

@@ -35,8 +35,8 @@ import (
 	"reflect"
 	"testing"
 
-	. "./testdata/_obj/test_proto"
 	. "code.google.com/p/goprotobuf/proto"
+	. "code.google.com/p/goprotobuf/proto/testdata"
 )
 
 type UnmarshalTextTest struct {
@@ -192,7 +192,7 @@ var unMarshalTextTests = []UnmarshalTextTest{
 	// Missing required field
 	{
 		in:  ``,
-		err: `line 1.0: message test_proto.MyMessage missing required field "count"`,
+		err: `line 1.0: message testdata.MyMessage missing required field "count"`,
 	},
 
 	// Repeated non-repeated field
@@ -213,9 +213,9 @@ var unMarshalTextTests = []UnmarshalTextTest{
 	},
 
 	// Extension
-	buildExtStructTest(`count: 42 [test_proto.Ext.more]:<data:"Hello, world!" >`),
-	buildExtStructTest(`count: 42 [test_proto.Ext.more] {data:"Hello, world!"}`),
-	buildExtDataTest(`count: 42 [test_proto.Ext.text]:"Hello, world!" [test_proto.Ext.number]:1729`),
+	buildExtStructTest(`count: 42 [testdata.Ext.more]:<data:"Hello, world!" >`),
+	buildExtStructTest(`count: 42 [testdata.Ext.more] {data:"Hello, world!"}`),
+	buildExtDataTest(`count: 42 [testdata.Ext.text]:"Hello, world!" [testdata.Ext.number]:1729`),
 
 	// Big all-in-one
 	{

+ 2 - 2
proto/text_test.go

@@ -38,7 +38,7 @@ import (
 
 	"code.google.com/p/goprotobuf/proto"
 
-	pb "./testdata/_obj/test_proto"
+	pb "code.google.com/p/goprotobuf/proto/testdata"
 )
 
 func newTestMessage() *pb.MyMessage {
@@ -123,7 +123,7 @@ SomeGroup {
 }
 /* 2 unknown bytes */
 tag13: 4
-[test_proto.Ext.more]: <
+[testdata.Ext.more]: <
   data: "Big gobs for big rats"
 >
 /* 13 unknown bytes */

+ 0 - 9
compiler/Makefile → protoc-gen-go/Makefile

@@ -29,15 +29,6 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-
-include $(GOROOT)/src/Make.inc
-
-TARG=protoc-gen-go
-GOFILES=\
-	main.go\
-
-DEPS=generator descriptor plugin
-
 include $(GOROOT)/src/Make.cmd
 
 test:

+ 0 - 0
compiler/descriptor/Makefile → protoc-gen-go/descriptor/Makefile


+ 0 - 0
compiler/descriptor/descriptor.pb.go → protoc-gen-go/descriptor/descriptor.pb.go


+ 0 - 0
compiler/descriptor/descriptor.pb.golden → protoc-gen-go/descriptor/descriptor.pb.golden


+ 0 - 0
compiler/doc.go → protoc-gen-go/doc.go


+ 0 - 0
compiler/generator/Makefile → protoc-gen-go/generator/Makefile


+ 2 - 2
compiler/generator/generator.go → protoc-gen-go/generator/generator.go

@@ -48,9 +48,9 @@ import (
 	"strconv"
 	"strings"
 
-	descriptor "code.google.com/p/goprotobuf/compiler/descriptor"
-	plugin "code.google.com/p/goprotobuf/compiler/plugin"
 	"code.google.com/p/goprotobuf/proto"
+	descriptor "code.google.com/p/goprotobuf/protoc-gen-go/descriptor"
+	plugin "code.google.com/p/goprotobuf/protoc-gen-go/plugin"
 )
 
 // A Plugin provides functionality to add to the output during Go code generation,

+ 1 - 1
compiler/main.go → protoc-gen-go/main.go

@@ -43,8 +43,8 @@ import (
 	"io/ioutil"
 	"os"
 
-	"code.google.com/p/goprotobuf/compiler/generator"
 	"code.google.com/p/goprotobuf/proto"
+	"code.google.com/p/goprotobuf/protoc-gen-go/generator"
 )
 
 func main() {

+ 0 - 0
compiler/plugin/Makefile → protoc-gen-go/plugin/Makefile


+ 1 - 1
compiler/plugin/plugin.pb.go → protoc-gen-go/plugin/plugin.pb.go

@@ -6,7 +6,7 @@ package google_protobuf_compiler
 import proto "code.google.com/p/goprotobuf/proto"
 import "math"
 
-import google_protobuf "code.google.com/p/goprotobuf/compiler/descriptor"
+import google_protobuf "code.google.com/p/goprotobuf/protoc-gen-go/descriptor"
 
 // Reference proto, math & os imports to suppress error if they are not otherwise used.
 var _ = proto.GetString

+ 0 - 0
compiler/plugin/plugin.pb.golden → protoc-gen-go/plugin/plugin.pb.golden


+ 32 - 26
compiler/testdata/Makefile → protoc-gen-go/testdata/Makefile

@@ -29,40 +29,46 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-include $(GOROOT)/src/Make.inc
+all: test
 
-all:
-	@echo run make test
+test:
+	echo protoc-gen-go tests are disabled
+	true
 
-include $(GOROOT)/src/Make.common
-include ../../Make.protobuf
+#include $(GOROOT)/src/Make.inc
 
-CLEANFILES+=*.pb.go extension_test
+#all:
+#	@echo run make test
 
-test:	golden testbuild extension_test
-	./extension_test
-	@echo PASS
+#include $(GOROOT)/src/Make.common
+#include ../../Make.protobuf
 
-golden:
-	$(QUOTED_GOBIN)/gomake -B test.pb.go
-	diff -w test.pb.go test.pb.go.golden
+#CLEANFILES+=*.pb.go extension_test
 
-nuke:	clean
+#test:	golden testbuild extension_test
+#	./extension_test
+#	@echo PASS
 
-testbuild:	main.$O
-	$(LD) -L. main.$O
+#golden:
+#	$(QUOTED_GOBIN)/gomake -B test.pb.go
+#	diff -w test.pb.go test.pb.go.golden
 
-extension_test:	extension_test.$O
-	$(LD) -L. -o $@ $< 
+#nuke:	clean
 
-multi.a: multi3.pb.$O multi2.pb.$O multi1.pb.$O
-	rm -f multi.a
-	$(QUOTED_GOBIN)/gopack grc $@ $<
+#testbuild:	main.$O
+#	$(LD) -L. main.$O
 
-%.$O:	%.go
-	$(QUOTED_GOBIN)/$(GC) -I . -o $@ $<
+#extension_test:	extension_test.$O
+#	$(LD) -L. -o $@ $< 
 
-test.pb.go:	imp.pb.go
-multi1.pb.go:	multi2.pb.go multi3.pb.go
-main.$O: imp.pb.$O test.pb.$O multi.a
-extension_test.$O: extension_base.pb.$O extension_extra.pb.$O extension_user.pb.$O
+#multi.a: multi3.pb.$O multi2.pb.$O multi1.pb.$O
+#	rm -f multi.a
+#	$(QUOTED_GOBIN)/gopack grc $@ $<
+
+#%.$O:	%.go
+#	$(QUOTED_GOBIN)/$(GC) -I . -o $@ $<
+
+#test.pb.go:	imp.pb.go
+#multi1.pb.go:	multi2.pb.go multi3.pb.go
+#main.$O: imp.pb.$O test.pb.$O multi.a
+#extension_test.$O: extension_base.pb.$O extension_extra.pb.$O extension_user.pb.$O

+ 0 - 0
compiler/testdata/extension_base.proto → protoc-gen-go/testdata/extension_base.proto


+ 0 - 0
compiler/testdata/extension_extra.proto → protoc-gen-go/testdata/extension_extra.proto


+ 0 - 0
compiler/testdata/extension_test.go → protoc-gen-go/testdata/extension_test.go


+ 0 - 0
compiler/testdata/extension_user.proto → protoc-gen-go/testdata/extension_user.proto


+ 0 - 0
compiler/testdata/imp.pb.go.golden → protoc-gen-go/testdata/imp.pb.go.golden


+ 0 - 0
compiler/testdata/imp.proto → protoc-gen-go/testdata/imp.proto


+ 0 - 0
compiler/testdata/imp2.proto → protoc-gen-go/testdata/imp2.proto


+ 0 - 0
compiler/testdata/main.go → protoc-gen-go/testdata/main.go


+ 0 - 0
compiler/testdata/multi1.proto → protoc-gen-go/testdata/multi1.proto


+ 0 - 0
compiler/testdata/multi2.proto → protoc-gen-go/testdata/multi2.proto


+ 0 - 0
compiler/testdata/multi3.proto → protoc-gen-go/testdata/multi3.proto


+ 0 - 0
compiler/testdata/test.pb.go.golden → protoc-gen-go/testdata/test.pb.go.golden


+ 0 - 0
compiler/testdata/test.proto → protoc-gen-go/testdata/test.proto