follow fail pattern for addUser: throw on bad arg, nil on bad result

closes #2156
This commit is contained in:
payonel 2018-02-20 07:44:41 -08:00
parent e91b8c0971
commit f11d384b51

View File

@ -77,8 +77,10 @@ class ComputerAPI(owner: NativeLuaArchitecture) extends NativeLuaAPI(owner) {
})
lua.setField(-2, "users")
lua.pushScalaFunction(lua => try {
machine.addUser(lua.checkString(1))
lua.pushScalaFunction(lua => {
val user = lua.checkString(1)
try {
machine.addUser(user)
lua.pushBoolean(true)
1
} catch {
@ -86,6 +88,7 @@ class ComputerAPI(owner: NativeLuaArchitecture) extends NativeLuaAPI(owner) {
lua.pushNil()
lua.pushString(Option(e.getMessage).getOrElse(e.toString))
2
}
})
lua.setField(-2, "addUser")