Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Side by Side Diff: compiled/bindings.ipp

Issue 29385742: Issue 4127 - [emscripten] Convert subscription classes to C++ - Part 2 (Closed) Base URL: https://hg.adblockplus.org/adblockpluscore
Patch Set: Use iterators syntax Created April 6, 2017, 8:05 a.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | Download patch
« no previous file with comments | « compiled/bindings.cpp ('k') | compiled/filter/Filter.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * This file is part of Adblock Plus <https://adblockplus.org/>, 2 * This file is part of Adblock Plus <https://adblockplus.org/>,
3 * Copyright (C) 2006-2017 eyeo GmbH 3 * Copyright (C) 2006-2017 eyeo GmbH
4 * 4 *
5 * Adblock Plus is free software: you can redistribute it and/or modify 5 * Adblock Plus is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 3 as 6 * it under the terms of the GNU General Public License version 3 as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
8 * 8 *
9 * Adblock Plus is distributed in the hope that it will be useful, 9 * Adblock Plus is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
(...skipping 441 matching lines...) Expand 10 before | Expand all | Expand 10 after
452 else 452 else
453 { 453 {
454 result += " var type = HEAP32[result + " + std::to_string(offset)+ " >> 2];\n"; 454 result += " var type = HEAP32[result + " + std::to_string(offset)+ " >> 2];\n";
455 result += " if (type in " + cls.name + "_mapping)\n"; 455 result += " if (type in " + cls.name + "_mapping)\n";
456 result += " result = new (exports[" + cls.name + "_mapping[type]])( result);\n"; 456 result += " result = new (exports[" + cls.name + "_mapping[type]])( result);\n";
457 result += " else\n"; 457 result += " else\n";
458 result += " throw new Error('Unexpected " + cls.name + " type: ' + type);\n"; 458 result += " throw new Error('Unexpected " + cls.name + " type: ' + type);\n";
459 } 459 }
460 460
461 result += " }\n"; 461 result += " }\n";
462 result += " else\n";
463 result += " result = null;\n";
462 return result; 464 return result;
463 } 465 }
464 else 466 else
465 throw std::runtime_error("Unexpected return type for " + std::string(call. name)); 467 throw std::runtime_error("Unexpected return type for " + std::string(call. name));
466 } 468 }
467 469
468 const std::string wrapCall(const FunctionInfo& call) 470 const std::string wrapCall(const FunctionInfo& call)
469 { 471 {
470 char buffer[20]; 472 char buffer[20];
471 bool hasStringArgs = false; 473 bool hasStringArgs = false;
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after
756 758
757 std::vector<std::pair<int, std::string>> mapping; 759 std::vector<std::pair<int, std::string>> mapping;
758 for (const auto& item : list) 760 for (const auto& item : list)
759 mapping.emplace_back(item.first, item.second); 761 mapping.emplace_back(item.first, item.second);
760 762
761 bindings_internal::register_differentiator( 763 bindings_internal::register_differentiator(
762 bindings_internal::TypeInfo<ClassType>(), offset, mapping); 764 bindings_internal::TypeInfo<ClassType>(), offset, mapping);
763 return *this; 765 return *this;
764 } 766 }
765 }; 767 };
OLDNEW
« no previous file with comments | « compiled/bindings.cpp ('k') | compiled/filter/Filter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld