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

Side by Side Diff: tools/json_schema_compiler/feature_compiler.py

Issue 2186893002: Reduce size of generated extension FeatureProviders. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: . Created 4 years, 4 months 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
« no previous file with comments | « extensions/common/features/simple_feature.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2016 The Chromium Authors. All rights reserved. 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 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 import argparse 5 import argparse
6 import copy 6 import copy
7 from datetime import datetime 7 from datetime import datetime
8 import os 8 import os
9 9
10 from code import Code 10 from code import Code
(...skipping 480 matching lines...) Expand 10 before | Expand all | Expand 10 after
491 for f in feature: 491 for f in feature:
492 c.Sblock('{') 492 c.Sblock('{')
493 c.Concat(f.GetCode(self._feature_class)) 493 c.Concat(f.GetCode(self._feature_class))
494 c.Append('features->push_back(std::move(feature));') 494 c.Append('features->push_back(std::move(feature));')
495 c.Eblock('}') 495 c.Eblock('}')
496 c.Append('std::unique_ptr<ComplexFeature> feature(') 496 c.Append('std::unique_ptr<ComplexFeature> feature(')
497 c.Append(' new ComplexFeature(std::move(features)));') 497 c.Append(' new ComplexFeature(std::move(features)));')
498 c.Append('feature->set_name("%s");' % k) 498 c.Append('feature->set_name("%s");' % k)
499 else: 499 else:
500 c.Concat(feature.GetCode(self._feature_class)) 500 c.Concat(feature.GetCode(self._feature_class))
501 c.Append('features_["%s"] = std::move(feature);' % k) 501 c.Append('AddFeature("%s", std::move(feature));' % k)
502 c.Eblock('}') 502 c.Eblock('}')
503 c.Eblock('}') 503 c.Eblock('}')
504 return c 504 return c
505 505
506 def Write(self): 506 def Write(self):
507 """Writes the output.""" 507 """Writes the output."""
508 header_file_path = self._out_base_filename + '.h' 508 header_file_path = self._out_base_filename + '.h'
509 cc_file_path = self._out_base_filename + '.cc' 509 cc_file_path = self._out_base_filename + '.cc'
510 substitutions = ({ 510 substitutions = ({
511 'header_file_path': header_file_path, 511 'header_file_path': header_file_path,
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
551 'out_base_filename', type=str, 551 'out_base_filename', type=str,
552 help='The base filename for the C++ files (.h and .cc will be appended)') 552 help='The base filename for the C++ files (.h and .cc will be appended)')
553 parser.add_argument('source_files', type=str, nargs='+', 553 parser.add_argument('source_files', type=str, nargs='+',
554 help='The source features.json files') 554 help='The source features.json files')
555 args = parser.parse_args() 555 args = parser.parse_args()
556 c = FeatureCompiler(args.chrome_root, args.source_files, args.feature_class, 556 c = FeatureCompiler(args.chrome_root, args.source_files, args.feature_class,
557 args.provider_class, args.out_root, 557 args.provider_class, args.out_root,
558 args.out_base_filename) 558 args.out_base_filename)
559 c.Compile() 559 c.Compile()
560 c.Write() 560 c.Write()
OLDNEW
« no previous file with comments | « extensions/common/features/simple_feature.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698