Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(266)

Side by Side Diff: mojo/public/bindings/js/codec.js

Issue 68323004: Port Mojo's sample_service.cc to JavaScript (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 define(function() { 5 define(function() {
6 6
7 // Memory ------------------------------------------------------------------- 7 // Memory -------------------------------------------------------------------
8 8
9 function store8(memory, pointer, val) { 9 function store8(memory, pointer, val) {
10 memory[pointer] = val; 10 memory[pointer] = val;
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 (memory[pointer + 2] << 16) + 43 (memory[pointer + 2] << 16) +
44 (memory[pointer + 3] << 24); 44 (memory[pointer + 3] << 24);
45 } 45 }
46 46
47 function load64(memory, pointer) { 47 function load64(memory, pointer) {
48 var low = load32(memory, pointer); 48 var low = load32(memory, pointer);
49 var high = load32(memory, pointer + 4); 49 var high = load32(memory, pointer + 4);
50 return low + high * 0x10000; 50 return low + high * 0x10000;
51 } 51 }
52 52
53 var kAlignment = 8;
54
55 function align(size) {
56 return size + (kAlignment - (size % kAlignment)) % kAlignment;
abarth-chromium 2013/11/18 23:30:44 The last % kAlignment is needed to handle the size
57 }
58
53 // Buffer ------------------------------------------------------------------- 59 // Buffer -------------------------------------------------------------------
54 60
55 function Buffer(size) { 61 function Buffer(size) {
56 this.memory = new Uint8Array(size); 62 this.memory = new Uint8Array(size);
57 this.next = 0; 63 this.next = 0;
58 } 64 }
59 65
60 Buffer.prototype.alloc = function(size) { 66 Buffer.prototype.alloc = function(size) {
61 var pointer = this.next; 67 var pointer = this.next;
62 this.next += size; 68 this.next += size;
(...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after
384 390
385 Handle.decode = function(decoder) { 391 Handle.decode = function(decoder) {
386 return decoder.decodeHandle(); 392 return decoder.decodeHandle();
387 }; 393 };
388 394
389 Handle.encode = function(encoder, val) { 395 Handle.encode = function(encoder, val) {
390 encoder.encodeHandle(val); 396 encoder.encodeHandle(val);
391 }; 397 };
392 398
393 var exports = {}; 399 var exports = {};
394 exports.load32 = load32; 400 exports.align = align;
abarth-chromium 2013/11/18 23:30:44 We don't need to export load32 anymore. We used t
395 exports.MessageBuilder = MessageBuilder; 401 exports.MessageBuilder = MessageBuilder;
396 exports.MessageReader = MessageReader; 402 exports.MessageReader = MessageReader;
397 exports.kArrayHeaderSize = kArrayHeaderSize; 403 exports.kArrayHeaderSize = kArrayHeaderSize;
398 exports.kStructHeaderSize = kStructHeaderSize; 404 exports.kStructHeaderSize = kStructHeaderSize;
399 exports.kMessageHeaderSize = kMessageHeaderSize; 405 exports.kMessageHeaderSize = kMessageHeaderSize;
400 exports.Uint8 = Uint8; 406 exports.Uint8 = Uint8;
401 exports.Uint16 = Uint16; 407 exports.Uint16 = Uint16;
402 exports.Uint32 = Uint32; 408 exports.Uint32 = Uint32;
403 exports.Uint64 = Uint64; 409 exports.Uint64 = Uint64;
404 exports.PointerTo = PointerTo; 410 exports.PointerTo = PointerTo;
405 exports.Handle = Handle; 411 exports.Handle = Handle;
406 return exports; 412 return exports;
407 }); 413 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698