mirror of
				https://github.com/superseriousbusiness/gotosocial.git
				synced 2025-11-03 18:32:25 -06:00 
			
		
		
		
	This allows for building GoToSocial with [SQLite transpiled to WASM](https://github.com/ncruces/go-sqlite3) and accessed through [Wazero](https://wazero.io/).
		
			
				
	
	
		
			26 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package sys
 | 
						|
 | 
						|
// ClockResolution is a positive granularity of clock precision in
 | 
						|
// nanoseconds. For example, if the resolution is 1us, this returns 1000.
 | 
						|
//
 | 
						|
// Note: Some implementations return arbitrary resolution because there's
 | 
						|
// no perfect alternative. For example, according to the source in time.go,
 | 
						|
// windows monotonic resolution can be 15ms. See /RATIONALE.md.
 | 
						|
type ClockResolution uint32
 | 
						|
 | 
						|
// Walltime returns the current unix/epoch time, seconds since midnight UTC
 | 
						|
// 1 January 1970, with a nanosecond fraction.
 | 
						|
type Walltime func() (sec int64, nsec int32)
 | 
						|
 | 
						|
// Nanotime returns nanoseconds since an arbitrary start point, used to measure
 | 
						|
// elapsed time. This is sometimes referred to as a tick or monotonic time.
 | 
						|
//
 | 
						|
// Note: There are no constraints on the value return except that it
 | 
						|
// increments. For example, -1 is a valid if the next value is >= 0.
 | 
						|
type Nanotime func() int64
 | 
						|
 | 
						|
// Nanosleep puts the current goroutine to sleep for at least ns nanoseconds.
 | 
						|
type Nanosleep func(ns int64)
 | 
						|
 | 
						|
// Osyield yields the processor, typically to implement spin-wait loops.
 | 
						|
type Osyield func()
 |