Copyright 2018 The Go Authors. All rights reserved. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
+build !appengine
Package subtle implements functions that are often useful in cryptographic code but require careful thought to use correctly. This is a mirror of golang.org/x/crypto/internal/subtle.
package subtle // import "crypto/internal/subtle"

import 
AnyOverlap reports whether x and y share memory at any (not necessarily corresponding) index. The memory beyond the slice length is ignored.
func (,  []byte) bool {
	return len() > 0 && len() > 0 &&
		uintptr(unsafe.Pointer(&[0])) <= uintptr(unsafe.Pointer(&[len()-1])) &&
		uintptr(unsafe.Pointer(&[0])) <= uintptr(unsafe.Pointer(&[len()-1]))
}
InexactOverlap reports whether x and y share memory at any non-corresponding index. The memory beyond the slice length is ignored. Note that x and y can have different lengths and still not have any inexact overlap. InexactOverlap can be used to implement the requirements of the crypto/cipher AEAD, Block, BlockMode and Stream interfaces.
func (,  []byte) bool {
	if len() == 0 || len() == 0 || &[0] == &[0] {
		return false
	}
	return AnyOverlap(, )