// Format is a support routine for fmt.Formatter. It accepts
// the formats 'b' (binary), 'o' (octal), and 'x' (hexadecimal).
//
-func (x Natural) Format(h fmt.Formatter, c int) {
+func (x Natural) Format(h fmt.State, c int) {
fmt.Fprintf(h, "%s", x.ToString(fmtbase(c)));
}
// Format is a support routine for fmt.Formatter. It accepts
// the formats 'b' (binary), 'o' (octal), and 'x' (hexadecimal).
//
-func (x *Integer) Format(h fmt.Formatter, c int) {
+func (x *Integer) Format(h fmt.State, c int) {
fmt.Fprintf(h, "%s", x.ToString(fmtbase(c)));
}
// Format is a support routine for fmt.Formatter. It accepts
// the formats 'b' (binary), 'o' (octal), and 'x' (hexadecimal).
//
-func (x *Rational) Format(h fmt.Formatter, c int) {
+func (x *Rational) Format(h fmt.State, c int) {
fmt.Fprintf(h, "%s", x.ToString(fmtbase(c)));
}
}
type flagPrinter struct { }
-func (*flagPrinter) Format(f fmt.Formatter, c int) {
+func (*flagPrinter) Format(f fmt.State, c int) {
s := "%";
for i := 0; i < 128; i++ {
if f.Flag(i) {
"utf8";
)
-// Formatter represents the printer state passed to custom formatters.
+// State represents the printer state passed to custom formatters.
// It provides access to the io.Writer interface plus information about
// the flags and options for the operand's format specifier.
-type Formatter interface {
+type State interface {
// Write is the function to call to emit formatted output to be printed.
Write(b []byte) (ret int, err os.Error);
// Width returns the value of the width option and whether it has been set.
// Format is the interface implemented by objects with a custom formatter.
// The implementation of Format may call Sprintf or Fprintf(f) etc.
// to generate its output.
-type Format interface {
- Format(f Formatter, c int);
+type Formatter interface {
+ Format(f State, c int);
}
// String represents any object being printed that has a String() method that
fieldnum++;
inter := field.Interface();
if inter != nil && c != 'T' { // don't want thing to describe itself if we're asking for its type
- if formatter, ok := inter.(Format); ok {
+ if formatter, ok := inter.(Formatter); ok {
formatter.Format(p, c);
continue;
}