Changeset 37275 in webkit for trunk/JavaScriptCore/kjs/NodeInfo.h
- Timestamp:
- Oct 3, 2008, 6:39:43 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/kjs/NodeInfo.h
r37132 r37275 26 26 namespace JSC { 27 27 28 typedef unsigned int FeatureInfo; 29 30 const FeatureInfo NoFeatures = 0; 31 const FeatureInfo EvalFeature = 1 << 0; 32 const FeatureInfo ClosureFeature = 1 << 1; 33 const FeatureInfo AssignFeature = 1 << 2; 34 const FeatureInfo ArgumentsFeature = 1 << 3; 35 const FeatureInfo WithFeature = 1 << 4; 36 const FeatureInfo CatchFeature = 1 << 5; 37 const FeatureInfo ThisFeature = 1 << 6; 38 const FeatureInfo AllFeatures = EvalFeature | ClosureFeature | AssignFeature | ArgumentsFeature | WithFeature | CatchFeature | ThisFeature; 39 40 template <typename T> struct NodeFeatureInfo { 28 template <typename T> struct NodeInfo { 41 29 T m_node; 42 FeatureInfo m_featureInfo;30 CodeFeatures m_features; 43 31 int m_numConstants; 44 32 }; 45 33 46 typedef Node FeatureInfo<FuncDeclNode*> FuncDeclNodeInfo;47 typedef Node FeatureInfo<FuncExprNode*> FuncExprNodeInfo;48 typedef Node FeatureInfo<ExpressionNode*> ExpressionNodeInfo;49 typedef Node FeatureInfo<ArgumentsNode*> ArgumentsNodeInfo;50 typedef Node FeatureInfo<ConstDeclNode*> ConstDeclNodeInfo;51 typedef Node FeatureInfo<PropertyNode*> PropertyNodeInfo;52 typedef Node FeatureInfo<PropertyList> PropertyListInfo;53 typedef Node FeatureInfo<ElementList> ElementListInfo;54 typedef Node FeatureInfo<ArgumentList> ArgumentListInfo;34 typedef NodeInfo<FuncDeclNode*> FuncDeclNodeInfo; 35 typedef NodeInfo<FuncExprNode*> FuncExprNodeInfo; 36 typedef NodeInfo<ExpressionNode*> ExpressionNodeInfo; 37 typedef NodeInfo<ArgumentsNode*> ArgumentsNodeInfo; 38 typedef NodeInfo<ConstDeclNode*> ConstDeclNodeInfo; 39 typedef NodeInfo<PropertyNode*> PropertyNodeInfo; 40 typedef NodeInfo<PropertyList> PropertyListInfo; 41 typedef NodeInfo<ElementList> ElementListInfo; 42 typedef NodeInfo<ArgumentList> ArgumentListInfo; 55 43 56 44 template <typename T> struct NodeDeclarationInfo { … … 58 46 ParserRefCountedData<DeclarationStacks::VarStack>* m_varDeclarations; 59 47 ParserRefCountedData<DeclarationStacks::FunctionStack>* m_funcDeclarations; 60 FeatureInfo m_featureInfo;48 CodeFeatures m_features; 61 49 int m_numConstants; 62 50 };
Note:
See TracChangeset
for help on using the changeset viewer.