Bug 1874684 - Part 4: Prefer const references instead of copying Instant values....
[gecko.git] / netwerk / base / nsBase64Encoder.h
blobb74d3c9b5a0882165c1cdfa070b6b023058aad99
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 #ifndef NSBASE64ENCODER_H_
6 #define NSBASE64ENCODER_H_
8 #include "nsIOutputStream.h"
9 #include "nsString.h"
10 #include "mozilla/Attributes.h"
12 /**
13 * A base64 encoder. Usage: Instantiate class, write to it using
14 * Write(), then call Finish() to get the base64-encoded data.
16 class nsBase64Encoder final : public nsIOutputStream {
17 public:
18 nsBase64Encoder() = default;
20 NS_DECL_ISUPPORTS
21 NS_DECL_NSIOUTPUTSTREAM
23 nsresult Finish(nsACString& _result);
25 private:
26 ~nsBase64Encoder() = default;
28 /// The data written to this stream. nsCString can deal fine with
29 /// binary data.
30 nsCString mData;
33 #endif