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

Side by Side Diff: Source/core/svg/SVGPathSegListTearOff.h

Issue 678163002: Oilpan: move SVG property hierarchy to the heap. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebased upto r185213 Created 6 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
« no previous file with comments | « Source/core/svg/SVGPathSegListSource.cpp ('k') | Source/core/svg/SVGPathSegMovetoAbs.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 * Copyright (C) 2014 Google Inc. All rights reserved. 2 * Copyright (C) 2014 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 26 matching lines...) Expand all
37 37
38 namespace blink { 38 namespace blink {
39 39
40 template<> 40 template<>
41 class ListItemPropertyTraits<SVGPathSeg> { 41 class ListItemPropertyTraits<SVGPathSeg> {
42 public: 42 public:
43 typedef SVGPathSeg ItemPropertyType; 43 typedef SVGPathSeg ItemPropertyType;
44 // FIXME: Currently SVGPathSegitself is a tear-off. 44 // FIXME: Currently SVGPathSegitself is a tear-off.
45 typedef SVGPathSeg ItemTearOffType; 45 typedef SVGPathSeg ItemTearOffType;
46 46
47 static PassRefPtr<ItemPropertyType> getValueForInsertionFromTearOff(PassRefP tr<ItemTearOffType> passNewItem, SVGElement* contextElement, const QualifiedName & attributeName) 47 static PassRefPtrWillBeRawPtr<ItemPropertyType> getValueForInsertionFromTear Off(PassRefPtrWillBeRawPtr<ItemTearOffType> passNewItem, SVGElement* contextElem ent, const QualifiedName& attributeName)
48 { 48 {
49 ASSERT(attributeName == SVGNames::dAttr); 49 ASSERT(attributeName == SVGNames::dAttr);
50 RefPtr<ItemTearOffType> newItem = passNewItem; 50 RefPtrWillBeRawPtr<ItemTearOffType> newItem = passNewItem;
51 newItem->setContextElement(contextElement); 51 newItem->setContextElement(contextElement);
52 return newItem.release(); 52 return newItem.release();
53 } 53 }
54 54
55 static PassRefPtr<ItemTearOffType> createTearOff(PassRefPtr<ItemPropertyType > passValue, SVGElement* contextElement, PropertyIsAnimValType, const QualifiedN ame&) 55 static PassRefPtrWillBeRawPtr<ItemTearOffType> createTearOff(PassRefPtrWillB eRawPtr<ItemPropertyType> passValue, SVGElement* contextElement, PropertyIsAnimV alType, const QualifiedName&)
56 { 56 {
57 RefPtr<SVGPathSeg> value = passValue; 57 RefPtrWillBeRawPtr<SVGPathSeg> value = passValue;
58 value->setContextElement(contextElement); 58 value->setContextElement(contextElement);
59 return value.release(); 59 return value.release();
60 } 60 }
61 }; 61 };
62 62
63 class SVGPathSegListTearOff final 63 class SVGPathSegListTearOff final
64 : public SVGListPropertyTearOffHelper<SVGPathSegListTearOff, SVGPathSegList> 64 : public SVGListPropertyTearOffHelper<SVGPathSegListTearOff, SVGPathSegList>
65 , public ScriptWrappable { 65 , public ScriptWrappable {
66 DEFINE_WRAPPERTYPEINFO(); 66 DEFINE_WRAPPERTYPEINFO();
67 public: 67 public:
68 static PassRefPtr<SVGPathSegListTearOff> create(PassRefPtr<SVGPathSegList> t arget, SVGElement* contextElement, PropertyIsAnimValType propertyIsAnimVal, cons t QualifiedName& attributeName = QualifiedName::null()) 68 static PassRefPtrWillBeRawPtr<SVGPathSegListTearOff> create(PassRefPtrWillBe RawPtr<SVGPathSegList> target, SVGElement* contextElement, PropertyIsAnimValType propertyIsAnimVal, const QualifiedName& attributeName = QualifiedName::null())
69 { 69 {
70 return adoptRef(new SVGPathSegListTearOff(target, contextElement, proper tyIsAnimVal, attributeName)); 70 return adoptRefWillBeNoop(new SVGPathSegListTearOff(target, contextEleme nt, propertyIsAnimVal, attributeName));
71 } 71 }
72 72
73 private: 73 private:
74 SVGPathSegListTearOff(PassRefPtr<SVGPathSegList> target, SVGElement* context Element, PropertyIsAnimValType propertyIsAnimVal, const QualifiedName& attribute Name = QualifiedName::null()) 74 SVGPathSegListTearOff(PassRefPtrWillBeRawPtr<SVGPathSegList> target, SVGElem ent* contextElement, PropertyIsAnimValType propertyIsAnimVal, const QualifiedNam e& attributeName = QualifiedName::null())
75 : SVGListPropertyTearOffHelper<SVGPathSegListTearOff, SVGPathSegList>(ta rget, contextElement, propertyIsAnimVal, attributeName) { } 75 : SVGListPropertyTearOffHelper<SVGPathSegListTearOff, SVGPathSegList>(ta rget, contextElement, propertyIsAnimVal, attributeName) { }
76 }; 76 };
77 77
78 } // namespace blink 78 } // namespace blink
79 79
80 #endif // SVGPathSegListTearOff_h 80 #endif // SVGPathSegListTearOff_h
OLDNEW
« no previous file with comments | « Source/core/svg/SVGPathSegListSource.cpp ('k') | Source/core/svg/SVGPathSegMovetoAbs.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698