markdown_wasm.mx raw

   1  //:build wasm
   2  
   3  package markdown
   4  
   5  import "unsafe"
   6  
   7  //:wasmimport bridge markdown_render
   8  func wasmRender(ptr *byte, length int32, capacity int32, outPtr *int32, outLen *int32)
   9  
  10  func Render(text string) (s string) {
  11  	var rPtr, rLen int32
  12  	wasmRender(unsafe.StringData(text), int32(len(text)), int32(len(text)), &rPtr, &rLen)
  13  	if rLen <= 0 {
  14  		return ""
  15  	}
  16  	return unsafe.String((*byte)(unsafe.Pointer(uintptr(rPtr))), rLen)
  17  }
  18