Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 7c402c0

Browse files
committed
remove PhpValue type
1 parent d71f2ba commit 7c402c0

3 files changed

Lines changed: 16 additions & 18 deletions

File tree

common.go

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,14 @@ import (
77
const TYPE_VALUE_SEPARATOR = ':'
88
const VALUES_SEPARATOR = ';'
99

10-
type PhpValue interface{}
11-
1210
type PhpObject struct {
13-
members map[PhpValue]PhpValue
11+
members map[interface{}]interface{}
1412
className string
1513
}
1614

1715
func NewPhpObject() *PhpObject {
1816
d := &PhpObject{
19-
members: make(map[PhpValue]PhpValue),
17+
members: make(map[interface{}]interface{}),
2018
}
2119
return d
2220
}
@@ -29,37 +27,37 @@ func (obj *PhpObject) SetClassName(cName string) {
2927
obj.className = cName
3028
}
3129

32-
func (obj *PhpObject) GetMembers() map[PhpValue]PhpValue {
30+
func (obj *PhpObject) GetMembers() map[interface{}]interface{} {
3331
return obj.members
3432
}
3533

36-
func (obj *PhpObject) GetPrivateMemberValue(memberName string) (PhpValue, bool) {
34+
func (obj *PhpObject) GetPrivateMemberValue(memberName string) (interface{}, bool) {
3735
key := fmt.Sprintf("\x00%s\x00%s", obj.className, memberName)
3836
v, ok := obj.members[key]
3937
return v, ok
4038
}
4139

42-
func (obj *PhpObject) SetPrivateMemberValue(memberName string, value PhpValue) {
40+
func (obj *PhpObject) SetPrivateMemberValue(memberName string, value interface{}) {
4341
key := fmt.Sprintf("\x00%s\x00%s", obj.className, memberName)
4442
obj.members[key] = value
4543
}
4644

47-
func (obj *PhpObject) GetProtectedMemberValue(memberName string) (PhpValue, bool) {
45+
func (obj *PhpObject) GetProtectedMemberValue(memberName string) (interface{}, bool) {
4846
key := "\x00*\x00" + memberName
4947
v, ok := obj.members[key]
5048
return v, ok
5149
}
5250

53-
func (obj *PhpObject) SetProtectedMemberValue(memberName string, value PhpValue) {
51+
func (obj *PhpObject) SetProtectedMemberValue(memberName string, value interface{}) {
5452
key := "\x00*\x00" + memberName
5553
obj.members[key] = value
5654
}
5755

58-
func (obj *PhpObject) GetPublicMemberValue(memberName string) (PhpValue, bool) {
56+
func (obj *PhpObject) GetPublicMemberValue(memberName string) (interface{}, bool) {
5957
v, ok := obj.members[memberName]
6058
return v, ok
6159
}
6260

63-
func (obj *PhpObject) SetPublicMemberValue(memberName string, value PhpValue) {
61+
func (obj *PhpObject) SetPublicMemberValue(memberName string, value interface{}) {
6462
obj.members[memberName] = value
6563
}

encoder.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import (
66
"strconv"
77
)
88

9-
func Encode(value PhpValue) (result string, err error) {
9+
func Encode(value interface{}) (result string, err error) {
1010
buf := new(bytes.Buffer)
1111
err = encodeValue(buf, value)
1212
if err == nil {
@@ -15,7 +15,7 @@ func Encode(value PhpValue) (result string, err error) {
1515
return
1616
}
1717

18-
func encodeValue(buf *bytes.Buffer, value PhpValue) (err error) {
18+
func encodeValue(buf *bytes.Buffer, value interface{}) (err error) {
1919
switch t := value.(type) {
2020
default:
2121
err = fmt.Errorf("Unexpected type %T", t)
@@ -46,7 +46,7 @@ func encodeValue(buf *bytes.Buffer, value PhpValue) (err error) {
4646
buf.WriteString("s")
4747
buf.WriteRune(TYPE_VALUE_SEPARATOR)
4848
encodeString(buf, t)
49-
case map[PhpValue]PhpValue:
49+
case map[interface{}]interface{}:
5050
buf.WriteString("a")
5151
buf.WriteRune(TYPE_VALUE_SEPARATOR)
5252
err = encodeArrayCore(buf, t)
@@ -69,7 +69,7 @@ func encodeString(buf *bytes.Buffer, strValue string) {
6969
buf.WriteRune('"')
7070
}
7171

72-
func encodeArrayCore(buf *bytes.Buffer, arrValue map[PhpValue]PhpValue) (err error) {
72+
func encodeArrayCore(buf *bytes.Buffer, arrValue map[interface{}]interface{}) (err error) {
7373
valLen := strconv.Itoa(len(arrValue))
7474
buf.WriteString(valLen)
7575
buf.WriteRune(TYPE_VALUE_SEPARATOR)
@@ -90,7 +90,7 @@ func encodeArrayCore(buf *bytes.Buffer, arrValue map[PhpValue]PhpValue) (err err
9090
break
9191
}
9292
switch v.(type) {
93-
case map[PhpValue]PhpValue, *PhpObject:
93+
case map[interface{}]interface{}, *PhpObject:
9494
//array and object can't end with VALUES_SEPARATOR
9595
default:
9696
buf.WriteRune(VALUES_SEPARATOR)

encoder_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ import (
55
)
66

77
func TestEncodeArrayValue2(t *testing.T) {
8-
data := make(map[PhpValue]PhpValue)
9-
data2 := make(map[PhpValue]PhpValue)
8+
data := make(map[interface{}]interface{})
9+
data2 := make(map[interface{}]interface{})
1010
data2["test"] = true
1111
data2["0"] = 5
1212
data2["flt32"] = float32(2.3)

0 commit comments

Comments
 (0)