| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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("mojo/public/js/bindings/codec", [ | 5 define("mojo/public/js/bindings/codec", [ |
| 6 "mojo/public/js/bindings/unicode", | 6 "mojo/public/js/bindings/unicode", |
| 7 "mojo/public/js/bindings/buffer" | 7 "mojo/public/js/bindings/buffer" |
| 8 ], function(unicode, buffer) { | 8 ], function(unicode, buffer) { |
| 9 | 9 |
| 10 var kErrorUnsigned = "Passing negative value to unsigned"; | 10 var kErrorUnsigned = "Passing negative value to unsigned"; |
| (...skipping 298 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 309 for (var i = 0; i < numberOfElements; ++i) | 309 for (var i = 0; i < numberOfElements; ++i) |
| 310 cls.encode(this, val[i]); | 310 cls.encode(this, val[i]); |
| 311 } | 311 } |
| 312 }; | 312 }; |
| 313 | 313 |
| 314 Encoder.prototype.encodeStruct = function(cls, val) { | 314 Encoder.prototype.encodeStruct = function(cls, val) { |
| 315 return cls.encode(this, val); | 315 return cls.encode(this, val); |
| 316 }; | 316 }; |
| 317 | 317 |
| 318 Encoder.prototype.encodeStructPointer = function(cls, val) { | 318 Encoder.prototype.encodeStructPointer = function(cls, val) { |
| 319 if (!val) { | 319 if (val == null) { |
| 320 // Also handles undefined, since undefined == null. |
| 320 this.encodePointer(val); | 321 this.encodePointer(val); |
| 321 return; | 322 return; |
| 322 } | 323 } |
| 323 var encoder = this.createAndEncodeEncoder(cls.encodedSize); | 324 var encoder = this.createAndEncodeEncoder(cls.encodedSize); |
| 324 cls.encode(encoder, val); | 325 cls.encode(encoder, val); |
| 325 }; | 326 }; |
| 326 | 327 |
| 327 Encoder.prototype.encodeArrayPointer = function(cls, val) { | 328 Encoder.prototype.encodeArrayPointer = function(cls, val) { |
| 328 if (!val) { | 329 if (val == null) { |
| 330 // Also handles undefined, since undefined == null. |
| 329 this.encodePointer(val); | 331 this.encodePointer(val); |
| 330 return; | 332 return; |
| 331 } | 333 } |
| 332 var numberOfElements = val.length; | 334 var numberOfElements = val.length; |
| 333 var encodedSize = kArrayHeaderSize + ((cls === PackedBool) ? | 335 var encodedSize = kArrayHeaderSize + ((cls === PackedBool) ? |
| 334 Math.ceil(numberOfElements / 8) : cls.encodedSize * numberOfElements); | 336 Math.ceil(numberOfElements / 8) : cls.encodedSize * numberOfElements); |
| 335 var encoder = this.createAndEncodeEncoder(encodedSize); | 337 var encoder = this.createAndEncodeEncoder(encodedSize); |
| 336 encoder.encodeArray(cls, val, numberOfElements, encodedSize); | 338 encoder.encodeArray(cls, val, numberOfElements, encodedSize); |
| 337 }; | 339 }; |
| 338 | 340 |
| 339 Encoder.prototype.encodeStringPointer = function(val) { | 341 Encoder.prototype.encodeStringPointer = function(val) { |
| 340 if (!val) { | 342 if (val == null) { |
| 343 // Also handles undefined, since undefined == null. |
| 341 this.encodePointer(val); | 344 this.encodePointer(val); |
| 342 return; | 345 return; |
| 343 } | 346 } |
| 344 var encodedSize = kArrayHeaderSize + unicode.utf8Length(val); | 347 var encodedSize = kArrayHeaderSize + unicode.utf8Length(val); |
| 345 var encoder = this.createAndEncodeEncoder(encodedSize); | 348 var encoder = this.createAndEncodeEncoder(encodedSize); |
| 346 encoder.encodeString(val); | 349 encoder.encodeString(val); |
| 347 }; | 350 }; |
| 348 | 351 |
| 349 // Message ------------------------------------------------------------------ | 352 // Message ------------------------------------------------------------------ |
| 350 | 353 |
| (...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 727 exports.NullableString = NullableString; | 730 exports.NullableString = NullableString; |
| 728 exports.PointerTo = PointerTo; | 731 exports.PointerTo = PointerTo; |
| 729 exports.NullablePointerTo = NullablePointerTo; | 732 exports.NullablePointerTo = NullablePointerTo; |
| 730 exports.ArrayOf = ArrayOf; | 733 exports.ArrayOf = ArrayOf; |
| 731 exports.NullableArrayOf = NullableArrayOf; | 734 exports.NullableArrayOf = NullableArrayOf; |
| 732 exports.PackedBool = PackedBool; | 735 exports.PackedBool = PackedBool; |
| 733 exports.Handle = Handle; | 736 exports.Handle = Handle; |
| 734 exports.NullableHandle = NullableHandle; | 737 exports.NullableHandle = NullableHandle; |
| 735 return exports; | 738 return exports; |
| 736 }); | 739 }); |
| OLD | NEW |