Run Format

Source file src/strings/compare.go

Documentation: strings

  // Copyright 2015 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.
  package strings
  // Compare returns an integer comparing two strings lexicographically.
  // The result will be 0 if a==b, -1 if a < b, and +1 if a > b.
  // Compare is included only for symmetry with package bytes.
  // It is usually clearer and always faster to use the built-in
  // string comparison operators ==, <, >, and so on.
  func Compare(a, b string) int {
  	// NOTE(rsc): This function does NOT call the runtime cmpstring function,
  	// because we do not want to provide any performance justification for
  	// using strings.Compare. Basically no one should use strings.Compare.
  	// As the comment above says, it is here only for symmetry with package bytes.
  	// If performance is important, the compiler should be changed to recognize
  	// the pattern so that all code doing three-way comparisons, not just code
  	// using strings.Compare, can benefit.
  	if a == b {
  		return 0
  	if a < b {
  		return -1
  	return +1

View as plain text