1// string-dump.h -- Abstract base class for dumping strings.    -*- C++ -*-
2
3// Copyright 2011 The Go Authors. All rights reserved.
4// Use of this source code is governed by a BSD-style
5// license that can be found in the LICENSE file.
6
7#ifndef GO_STRING_DUMP_H
8#define GO_STRING_DUMP_H
9
10// This abstract class provides an interface strings for whatever purpose.
11// Used for example for exporting and dumping objects.
12
13class String_dump
14{
15 public:
16  // Write a string. Implements the String_dump interface.
17  virtual void
18  write_string(const std::string& s) = 0;
19
20  // Implementors should override this member, to dump a formatted c string.
21  virtual void
22  write_c_string(const char*) = 0;
23};
24
25#endif  // GO_STRING_DUMP_H
26