github.com/gnolang/gno@v0.0.0-20240520182011-228e9d0192ce/gnovm/stdlibs/time/time.go (about)

     1  package time
     2  
     3  import (
     4  	"time"
     5  
     6  	gno "github.com/gnolang/gno/gnovm/pkg/gnolang"
     7  	"github.com/gnolang/gno/gnovm/stdlibs/std"
     8  )
     9  
    10  func X_now(m *gno.Machine) (sec int64, nsec int32, mono int64) {
    11  	if m == nil || m.Context == nil {
    12  		return 0, 0, 0
    13  	}
    14  
    15  	ctx := m.Context.(std.ExecContext)
    16  	return ctx.Timestamp, int32(ctx.TimestampNano), ctx.Timestamp*int64(time.Second) + ctx.TimestampNano
    17  }