servo/tests/wpt/web-platform-tests/resources/chromium/string16.mojom.js

141 lines
No EOL
4 KiB
JavaScript

// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
'use strict';
(function() {
var mojomId = 'mojo/public/mojom/base/string16.mojom';
if (mojo.internal.isMojomLoaded(mojomId)) {
console.warn('The following mojom is loaded multiple times: ' + mojomId);
return;
}
mojo.internal.markMojomLoaded(mojomId);
var bindings = mojo;
var associatedBindings = mojo;
var codec = mojo.internal;
var validator = mojo.internal;
var exports = mojo.internal.exposeNamespace('mojoBase.mojom');
var big_buffer$ =
mojo.internal.exposeNamespace('mojoBase.mojom');
if (mojo.config.autoLoadMojomDeps) {
mojo.internal.loadMojomIfNecessary(
'mojo/public/mojom/base/big_buffer.mojom', 'big_buffer.mojom.js');
}
function String16(values) {
this.initDefaults_();
this.initFields_(values);
}
String16.prototype.initDefaults_ = function() {
this.data = null;
};
String16.prototype.initFields_ = function(fields) {
for(var field in fields) {
if (this.hasOwnProperty(field))
this[field] = fields[field];
}
};
String16.validate = function(messageValidator, offset) {
var err;
err = messageValidator.validateStructHeader(offset, codec.kStructHeaderSize);
if (err !== validator.validationError.NONE)
return err;
var kVersionSizes = [
{version: 0, numBytes: 16}
];
err = messageValidator.validateStructVersion(offset, kVersionSizes);
if (err !== validator.validationError.NONE)
return err;
// validate String16.data
err = messageValidator.validateArrayPointer(offset + codec.kStructHeaderSize + 0, 2, codec.Uint16, false, [0], 0);
if (err !== validator.validationError.NONE)
return err;
return validator.validationError.NONE;
};
String16.encodedSize = codec.kStructHeaderSize + 8;
String16.decode = function(decoder) {
var packed;
var val = new String16();
var numberOfBytes = decoder.readUint32();
var version = decoder.readUint32();
val.data = decoder.decodeArrayPointer(codec.Uint16);
return val;
};
String16.encode = function(encoder, val) {
var packed;
encoder.writeUint32(String16.encodedSize);
encoder.writeUint32(0);
encoder.encodeArrayPointer(codec.Uint16, val.data);
};
function BigString16(values) {
this.initDefaults_();
this.initFields_(values);
}
BigString16.prototype.initDefaults_ = function() {
this.data = null;
};
BigString16.prototype.initFields_ = function(fields) {
for(var field in fields) {
if (this.hasOwnProperty(field))
this[field] = fields[field];
}
};
BigString16.validate = function(messageValidator, offset) {
var err;
err = messageValidator.validateStructHeader(offset, codec.kStructHeaderSize);
if (err !== validator.validationError.NONE)
return err;
var kVersionSizes = [
{version: 0, numBytes: 24}
];
err = messageValidator.validateStructVersion(offset, kVersionSizes);
if (err !== validator.validationError.NONE)
return err;
// validate BigString16.data
err = messageValidator.validateUnion(offset + codec.kStructHeaderSize + 0, big_buffer$.BigBuffer, false);
if (err !== validator.validationError.NONE)
return err;
return validator.validationError.NONE;
};
BigString16.encodedSize = codec.kStructHeaderSize + 16;
BigString16.decode = function(decoder) {
var packed;
var val = new BigString16();
var numberOfBytes = decoder.readUint32();
var version = decoder.readUint32();
val.data = decoder.decodeStruct(big_buffer$.BigBuffer);
return val;
};
BigString16.encode = function(encoder, val) {
var packed;
encoder.writeUint32(BigString16.encodedSize);
encoder.writeUint32(0);
encoder.encodeStruct(big_buffer$.BigBuffer, val.data);
};
exports.String16 = String16;
exports.BigString16 = BigString16;
})();