xref: /aosp_15_r20/external/go-cmp/cmp/internal/testprotos/protos.go (revision 88d15eac089d7f20c739ff1001d56b91872b21a1)
1*88d15eacSSasha Smundak// Copyright 2017, The Go Authors. All rights reserved.
2*88d15eacSSasha Smundak// Use of this source code is governed by a BSD-style
3*88d15eacSSasha Smundak// license that can be found in the LICENSE file.
4*88d15eacSSasha Smundak
5*88d15eacSSasha Smundakpackage testprotos
6*88d15eacSSasha Smundak
7*88d15eacSSasha Smundakfunc Equal(x, y Message) bool {
8*88d15eacSSasha Smundak	if x == nil || y == nil {
9*88d15eacSSasha Smundak		return x == nil && y == nil
10*88d15eacSSasha Smundak	}
11*88d15eacSSasha Smundak	return x.String() == y.String()
12*88d15eacSSasha Smundak}
13*88d15eacSSasha Smundak
14*88d15eacSSasha Smundaktype Message interface {
15*88d15eacSSasha Smundak	Proto()
16*88d15eacSSasha Smundak	String() string
17*88d15eacSSasha Smundak}
18*88d15eacSSasha Smundak
19*88d15eacSSasha Smundaktype proto interface {
20*88d15eacSSasha Smundak	Proto()
21*88d15eacSSasha Smundak}
22*88d15eacSSasha Smundak
23*88d15eacSSasha Smundaktype notComparable struct {
24*88d15eacSSasha Smundak	unexportedField func()
25*88d15eacSSasha Smundak}
26*88d15eacSSasha Smundak
27*88d15eacSSasha Smundaktype Stringer struct{ X string }
28*88d15eacSSasha Smundak
29*88d15eacSSasha Smundakfunc (s *Stringer) String() string { return s.X }
30*88d15eacSSasha Smundak
31*88d15eacSSasha Smundak// Project1 protocol buffers
32*88d15eacSSasha Smundaktype (
33*88d15eacSSasha Smundak	Eagle_States         int
34*88d15eacSSasha Smundak	Eagle_MissingCalls   int
35*88d15eacSSasha Smundak	Dreamer_States       int
36*88d15eacSSasha Smundak	Dreamer_MissingCalls int
37*88d15eacSSasha Smundak	Slap_States          int
38*88d15eacSSasha Smundak	Goat_States          int
39*88d15eacSSasha Smundak	Donkey_States        int
40*88d15eacSSasha Smundak	SummerType           int
41*88d15eacSSasha Smundak
42*88d15eacSSasha Smundak	Eagle struct {
43*88d15eacSSasha Smundak		proto
44*88d15eacSSasha Smundak		notComparable
45*88d15eacSSasha Smundak		Stringer
46*88d15eacSSasha Smundak	}
47*88d15eacSSasha Smundak	Dreamer struct {
48*88d15eacSSasha Smundak		proto
49*88d15eacSSasha Smundak		notComparable
50*88d15eacSSasha Smundak		Stringer
51*88d15eacSSasha Smundak	}
52*88d15eacSSasha Smundak	Slap struct {
53*88d15eacSSasha Smundak		proto
54*88d15eacSSasha Smundak		notComparable
55*88d15eacSSasha Smundak		Stringer
56*88d15eacSSasha Smundak	}
57*88d15eacSSasha Smundak	Goat struct {
58*88d15eacSSasha Smundak		proto
59*88d15eacSSasha Smundak		notComparable
60*88d15eacSSasha Smundak		Stringer
61*88d15eacSSasha Smundak	}
62*88d15eacSSasha Smundak	Donkey struct {
63*88d15eacSSasha Smundak		proto
64*88d15eacSSasha Smundak		notComparable
65*88d15eacSSasha Smundak		Stringer
66*88d15eacSSasha Smundak	}
67*88d15eacSSasha Smundak)
68*88d15eacSSasha Smundak
69*88d15eacSSasha Smundak// Project2 protocol buffers
70*88d15eacSSasha Smundaktype (
71*88d15eacSSasha Smundak	Germ struct {
72*88d15eacSSasha Smundak		proto
73*88d15eacSSasha Smundak		notComparable
74*88d15eacSSasha Smundak		Stringer
75*88d15eacSSasha Smundak	}
76*88d15eacSSasha Smundak	Dish struct {
77*88d15eacSSasha Smundak		proto
78*88d15eacSSasha Smundak		notComparable
79*88d15eacSSasha Smundak		Stringer
80*88d15eacSSasha Smundak	}
81*88d15eacSSasha Smundak)
82*88d15eacSSasha Smundak
83*88d15eacSSasha Smundak// Project3 protocol buffers
84*88d15eacSSasha Smundaktype (
85*88d15eacSSasha Smundak	Dirt struct {
86*88d15eacSSasha Smundak		proto
87*88d15eacSSasha Smundak		notComparable
88*88d15eacSSasha Smundak		Stringer
89*88d15eacSSasha Smundak	}
90*88d15eacSSasha Smundak	Wizard struct {
91*88d15eacSSasha Smundak		proto
92*88d15eacSSasha Smundak		notComparable
93*88d15eacSSasha Smundak		Stringer
94*88d15eacSSasha Smundak	}
95*88d15eacSSasha Smundak	Sadistic struct {
96*88d15eacSSasha Smundak		proto
97*88d15eacSSasha Smundak		notComparable
98*88d15eacSSasha Smundak		Stringer
99*88d15eacSSasha Smundak	}
100*88d15eacSSasha Smundak)
101*88d15eacSSasha Smundak
102*88d15eacSSasha Smundak// Project4 protocol buffers
103*88d15eacSSasha Smundaktype (
104*88d15eacSSasha Smundak	HoneyStatus int
105*88d15eacSSasha Smundak	PoisonType  int
106*88d15eacSSasha Smundak	MetaData    struct {
107*88d15eacSSasha Smundak		proto
108*88d15eacSSasha Smundak		notComparable
109*88d15eacSSasha Smundak		Stringer
110*88d15eacSSasha Smundak	}
111*88d15eacSSasha Smundak	Restrictions struct {
112*88d15eacSSasha Smundak		proto
113*88d15eacSSasha Smundak		notComparable
114*88d15eacSSasha Smundak		Stringer
115*88d15eacSSasha Smundak	}
116*88d15eacSSasha Smundak)
117