error.go 676 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
/*!
 *  Copyright (c) 2018 by Contributors
 * \brief gotvm package source for error related API interface.
 * \file error.go
 */

package gotvm

//#include "gotvm.h"
import "C"

import (
    "unsafe"
)

// getTVMLastError returns the detailed error string for any api called in TVM runtime.
//
// This is useful when any api returns non zero value.
//
// Returns golang string for the corresponding native error message.
func getTVMLastError() (retVal string) {
    errStr := C.TVMGetLastError()
    retVal = C.GoString(errStr)
    return
}

func setTVMLastError(errStr string) {
    cstr := C.CString(errStr)
    C.TVMAPISetLastError(cstr)
    C.free(unsafe.Pointer(cstr))
}