Skip to content

Commit d819443

Browse files
committedDec 25, 2017
use an empty string cache
1 parent 1dc5a40 commit d819443

File tree

4 files changed

+8
-6
lines changed

4 files changed

+8
-6
lines changed
 

‎iolib.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -372,7 +372,7 @@ func fileReadAux(L *LState, file *lFile, idx int) int {
372372
var buf []byte
373373
buf, err = ioutil.ReadAll(file.reader)
374374
if err == io.EOF {
375-
L.Push(LString(""))
375+
L.Push(emptyLString)
376376
goto normalreturn
377377
}
378378
if err != nil {

‎loadlib.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ func OpenPackage(L *LState) int {
6363
L.SetField(L.Get(RegistryIndex), "_LOADED", loaded)
6464

6565
L.SetField(packagemod, "path", LString(loGetPath(LuaPath, LuaPathDefault)))
66-
L.SetField(packagemod, "cpath", LString(""))
66+
L.SetField(packagemod, "cpath", emptyLString)
6767

6868
L.Push(packagemod)
6969
return 1

‎stringlib.go

+4-2
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ import (
77
"github.com/yuin/gopher-lua/pm"
88
)
99

10+
const emptyLString LString = LString("")
11+
1012
func OpenString(L *LState) int {
1113
var mod *LTable
1214
//_, ok := L.G.builtinMts[int(LTString)]
@@ -391,7 +393,7 @@ func strRep(L *LState) int {
391393
str := L.CheckString(1)
392394
n := L.CheckInt(2)
393395
if n < 0 {
394-
L.Push(LString(""))
396+
L.Push(emptyLString)
395397
} else {
396398
L.Push(LString(strings.Repeat(str, n)))
397399
}
@@ -415,7 +417,7 @@ func strSub(L *LState) int {
415417
end := luaIndex2StringIndex(str, L.OptInt(3, -1), false)
416418
l := len(str)
417419
if start >= l || end < start {
418-
L.Push(LString(""))
420+
L.Push(emptyLString)
419421
} else {
420422
L.Push(LString(str[start:end]))
421423
}

‎tablelib.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -56,14 +56,14 @@ func tableConcat(L *LState) int {
5656
j := L.OptInt(4, tbl.Len())
5757
if L.GetTop() == 3 {
5858
if i > tbl.Len() || i < 1 {
59-
L.Push(LString(""))
59+
L.Push(emptyLString)
6060
return 1
6161
}
6262
}
6363
i = intMax(intMin(i, tbl.Len()), 1)
6464
j = intMin(intMin(j, tbl.Len()), tbl.Len())
6565
if i > j {
66-
L.Push(LString(""))
66+
L.Push(emptyLString)
6767
return 1
6868
}
6969
//TODO should flushing?

0 commit comments

Comments
 (0)
Please sign in to comment.