github.com/cristalhq/base64@v0.1.2/decoder_be.go (about)

     1  //go:build armbe || arm64be || mips || mips64 || mips64p32 || ppc || ppc64 || sparc || sparc64 || s390 || s390x
     2  // +build armbe arm64be mips mips64 mips64p32 ppc ppc64 sparc sparc64 s390 s390x
     3  
     4  package base64
     5  
     6  import "unsafe"
     7  
     8  func putTail(ptr uintptr, tail *[4]byte, n int) {
     9  	switch n {
    10  	case 3:
    11  		*(*byte)(unsafe.Pointer(ptr)) = tail[3]
    12  		*(*byte)(unsafe.Pointer(ptr + 1)) = tail[2]
    13  		*(*byte)(unsafe.Pointer(ptr + 2)) = tail[1]
    14  	case 2:
    15  		*(*byte)(unsafe.Pointer(ptr)) = tail[3]
    16  		*(*byte)(unsafe.Pointer(ptr + 1)) = tail[2]
    17  	case 1:
    18  		*(*byte)(unsafe.Pointer(ptr)) = tail[3]
    19  	}
    20  }