// Copyright 2011 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.packagexerrorsimport"fmt"// errorString is a trivial implementation of error.typeerrorStringstruct{sstringframeFrame}// New returns an error that formats as the given text.//// The returned error contains a Frame set to the caller's location and// implements Formatter to show this information when printed with details.funcNew(textstring)error{return&errorString{text,Caller(1)}}func(e*errorString)Error()string{returne.s}func(e*errorString)Format(sfmt.State,vrune){FormatError(e,s,v)}func(e*errorString)FormatError(pPrinter)(nexterror){p.Print(e.s)e.frame.Format(p)returnnil}