1 // Copyright 2016 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 module mojo_base.mojom; 6 7 import "mojo/public/mojom/base/big_buffer.mojom"; 8 9 // Corresponds to |base::string16| in base/strings/string16.h 10 // Corresponds to |WTF::String| in 11 // third_party/WebKit/Source/platform/wtf/text/WTFString.h. 12 // Don't make backwards-incompatible changes to this definition! 13 // It's used in PageState serialization, so backwards incompatible changes 14 // would cause stored PageState objects to be un-parseable. Please contact the 15 // page state serialization owners before making such a change. 16 struct String16 { 17 array<uint16> data; 18 }; 19 20 // This type should be used in place of String16 whenever the contents of the 21 // string may realistically exceed 64 kB in size. This string is safe to store 22 // an arbitrarily large amount of data (available memory permitting) without 23 // negatively impacting IPC performance or hitting hard message size 24 // boundaries. 25 struct BigString16 { 26 BigBuffer data; 27 }; 28