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

Side by Side Diff: Source/core/inspector/CodeGeneratorInspectorStrings.py

Issue 813473003: replace COMPILE_ASSERT with static_assert in core/inspector/ (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years 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 | « Source/core/inspector/CodeGeneratorInspector.py ('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 (c) 2013 Google Inc. All rights reserved. 1 # Copyright (c) 2013 Google Inc. All rights reserved.
2 # 2 #
3 # Redistribution and use in source and binary forms, with or without 3 # Redistribution and use in source and binary forms, with or without
4 # modification, are permitted provided that the following conditions are 4 # modification, are permitted provided that the following conditions are
5 # met: 5 # met:
6 # 6 #
7 # * Redistributions of source code must retain the above copyright 7 # * Redistributions of source code must retain the above copyright
8 # notice, this list of conditions and the following disclaimer. 8 # notice, this list of conditions and the following disclaimer.
9 # * Redistributions in binary form must reproduce the above 9 # * Redistributions in binary form must reproduce the above
10 # copyright notice, this list of conditions and the following disclaimer 10 # copyright notice, this list of conditions and the following disclaimer
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after
223 223
224 const char InspectorBackendDispatcher::commandNames[] = { 224 const char InspectorBackendDispatcher::commandNames[] = {
225 $methodNameDeclarations 225 $methodNameDeclarations
226 }; 226 };
227 227
228 const size_t InspectorBackendDispatcher::commandNamesIndex[] = { 228 const size_t InspectorBackendDispatcher::commandNamesIndex[] = {
229 $methodNameDeclarationsIndex 229 $methodNameDeclarationsIndex
230 }; 230 };
231 231
232 const char* InspectorBackendDispatcher::commandName(MethodNames index) { 232 const char* InspectorBackendDispatcher::commandName(MethodNames index) {
233 COMPILE_ASSERT(static_cast<int>(kMethodNamesEnumSize) == WTF_ARRAY_LENGTH(co mmandNamesIndex), command_name_array_problem); 233 static_assert(static_cast<int>(kMethodNamesEnumSize) == WTF_ARRAY_LENGTH(com mandNamesIndex), "MethodNames enum should have the same number of elements as co mmandNamesIndex");
234 return commandNames + commandNamesIndex[index]; 234 return commandNames + commandNamesIndex[index];
235 } 235 }
236 236
237 class InspectorBackendDispatcherImpl : public InspectorBackendDispatcher { 237 class InspectorBackendDispatcherImpl : public InspectorBackendDispatcher {
238 public: 238 public:
239 InspectorBackendDispatcherImpl(InspectorFrontendChannel* inspectorFrontendCh annel) 239 InspectorBackendDispatcherImpl(InspectorFrontendChannel* inspectorFrontendCh annel)
240 : m_inspectorFrontendChannel(inspectorFrontendChannel) 240 : m_inspectorFrontendChannel(inspectorFrontendChannel)
241 $constructorInit 241 $constructorInit
242 { } 242 { }
243 243
(...skipping 360 matching lines...) Expand 10 before | Expand all | Expand 10 after
604 struct ArrayItemHelper { 604 struct ArrayItemHelper {
605 typedef typename T::ItemTraits Traits; 605 typedef typename T::ItemTraits Traits;
606 }; 606 };
607 607
608 template<typename T> 608 template<typename T>
609 class Array : public JSONArrayBase { 609 class Array : public JSONArrayBase {
610 private: 610 private:
611 Array() { } 611 Array() { }
612 612
613 JSONArray* openAccessors() { 613 JSONArray* openAccessors() {
614 COMPILE_ASSERT(sizeof(JSONArray) == sizeof(Array<T>), cannot_cast); 614 static_assert(sizeof(JSONArray) == sizeof(Array<T>), "JSONArray should b e the same size as Array<T>");
615 return static_cast<JSONArray*>(static_cast<JSONArrayBase*>(this)); 615 return static_cast<JSONArray*>(static_cast<JSONArrayBase*>(this));
616 } 616 }
617 617
618 public: 618 public:
619 void addItem(PassRefPtr<T> value) 619 void addItem(PassRefPtr<T> value)
620 { 620 {
621 ArrayItemHelper<T>::Traits::pushRefPtr(this->openAccessors(), value); 621 ArrayItemHelper<T>::Traits::pushRefPtr(this->openAccessors(), value);
622 } 622 }
623 623
624 void addItem(T value) 624 void addItem(T value)
625 { 625 {
626 ArrayItemHelper<T>::Traits::pushRaw(this->openAccessors(), value); 626 ArrayItemHelper<T>::Traits::pushRaw(this->openAccessors(), value);
627 } 627 }
628 628
629 static PassRefPtr<Array<T> > create() 629 static PassRefPtr<Array<T> > create()
630 { 630 {
631 return adoptRef(new Array<T>()); 631 return adoptRef(new Array<T>());
632 } 632 }
633 633
634 static PassRefPtr<Array<T> > runtimeCast(PassRefPtr<JSONValue> value) 634 static PassRefPtr<Array<T> > runtimeCast(PassRefPtr<JSONValue> value)
635 { 635 {
636 RefPtr<JSONArray> array; 636 RefPtr<JSONArray> array;
637 bool castRes = value->asArray(&array); 637 bool castRes = value->asArray(&array);
638 ASSERT_UNUSED(castRes, castRes); 638 ASSERT_UNUSED(castRes, castRes);
639 #if $validatorIfdefName 639 #if $validatorIfdefName
640 assertCorrectValue(array.get()); 640 assertCorrectValue(array.get());
641 #endif // $validatorIfdefName 641 #endif // $validatorIfdefName
642 COMPILE_ASSERT(sizeof(Array<T>) == sizeof(JSONArray), type_cast_problem) ; 642 static_assert(sizeof(Array<T>) == sizeof(JSONArray), "Array<T> should be the same size as JSONArray");
643 return static_cast<Array<T>*>(static_cast<JSONArrayBase*>(array.get())); 643 return static_cast<Array<T>*>(static_cast<JSONArrayBase*>(array.get()));
644 } 644 }
645 645
646 void concat(PassRefPtr<Array<T> > array) 646 void concat(PassRefPtr<Array<T> > array)
647 { 647 {
648 return ArrayItemHelper<T>::Traits::concat(this->openAccessors(), array-> openAccessors()); 648 return ArrayItemHelper<T>::Traits::concat(this->openAccessors(), array-> openAccessors());
649 } 649 }
650 650
651 #if $validatorIfdefName 651 #if $validatorIfdefName
652 static void assertCorrectValue(JSONValue* value) 652 static void assertCorrectValue(JSONValue* value)
(...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after
892 private: 892 private:
893 RefPtr<JSONObject> m_result; 893 RefPtr<JSONObject> m_result;
894 894
895 template<int STEP> Builder<STATE | STEP>& castState() 895 template<int STEP> Builder<STATE | STEP>& castState()
896 { 896 {
897 return *reinterpret_cast<Builder<STATE | STEP>*>(this); 897 return *reinterpret_cast<Builder<STATE | STEP>*>(this);
898 } 898 }
899 899
900 Builder(PassRefPtr</*%s*/JSONObject> ptr) 900 Builder(PassRefPtr</*%s*/JSONObject> ptr)
901 { 901 {
902 COMPILE_ASSERT(STATE == NoFieldsSet, builder_created_in_non_init_sta te); 902 static_assert(STATE == NoFieldsSet, "builder should not be created i n non-init state");
903 m_result = ptr; 903 m_result = ptr;
904 } 904 }
905 friend class %s; 905 friend class %s;
906 public: 906 public:
907 """) 907 """)
908 908
909 class_binding_builder_part_2 = (""" 909 class_binding_builder_part_2 = ("""
910 Builder<STATE | %s>& set%s(%s value) 910 Builder<STATE | %s>& set%s(%s value)
911 { 911 {
912 COMPILE_ASSERT(!(STATE & %s), property_%s_already_set); 912 static_assert(!(STATE & %s), "property %s should not be set yet");
913 m_result->set%s("%s", %s); 913 m_result->set%s("%s", %s);
914 return castState<%s>(); 914 return castState<%s>();
915 } 915 }
916 """) 916 """)
917 917
918 class_binding_builder_part_3 = (""" 918 class_binding_builder_part_3 = ("""
919 operator RefPtr<%s>& () 919 operator RefPtr<%s>& ()
920 { 920 {
921 COMPILE_ASSERT(STATE == AllFieldsSet, result_is_not_ready); 921 static_assert(STATE == AllFieldsSet, "state should be AllFieldsSet") ;
922 COMPILE_ASSERT(sizeof(%s) == sizeof(JSONObject), cannot_cast); 922 static_assert(sizeof(%s) == sizeof(JSONObject), "%s should be the sa me size as JSONObject");
923 return *reinterpret_cast<RefPtr<%s>*>(&m_result); 923 return *reinterpret_cast<RefPtr<%s>*>(&m_result);
924 } 924 }
925 925
926 PassRefPtr<%s> release() 926 PassRefPtr<%s> release()
927 { 927 {
928 return RefPtr<%s>(*this).release(); 928 return RefPtr<%s>(*this).release();
929 } 929 }
930 }; 930 };
931 931
932 """) 932 """)
933 933
934 class_binding_builder_part_4 = ( 934 class_binding_builder_part_4 = (
935 """ static Builder<NoFieldsSet> create() 935 """ static Builder<NoFieldsSet> create()
936 { 936 {
937 return Builder<NoFieldsSet>(JSONObject::create()); 937 return Builder<NoFieldsSet>(JSONObject::create());
938 } 938 }
939 """) 939 """)
OLDNEW
« no previous file with comments | « Source/core/inspector/CodeGeneratorInspector.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698