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

Side by Side Diff: src/regexp-macro-assembler-re2k.h

Issue 11319: * Add support for positive lookahead assertions and negative... (Closed) Base URL: http://v8.googlecode.com/svn/branches/experimental/regexp2000/
Patch Set: Created 12 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
OLDNEW
1 // Copyright 2008 the V8 project authors. All rights reserved. 1 // Copyright 2008 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
45 virtual void Backtrack(); 45 virtual void Backtrack();
46 virtual void GoTo(Label* label); 46 virtual void GoTo(Label* label);
47 virtual void PushBacktrack(Label* label); 47 virtual void PushBacktrack(Label* label);
48 virtual void Succeed(); 48 virtual void Succeed();
49 virtual void Fail(); 49 virtual void Fail();
50 virtual void PopRegister(int register_index); 50 virtual void PopRegister(int register_index);
51 virtual void PushRegister(int register_index); 51 virtual void PushRegister(int register_index);
52 virtual void AdvanceRegister(int reg, int by); // r[reg] += by. 52 virtual void AdvanceRegister(int reg, int by); // r[reg] += by.
53 virtual void SetRegister(int register_index, int to); 53 virtual void SetRegister(int register_index, int to);
54 virtual void WriteCurrentPositionToRegister(int reg); 54 virtual void WriteCurrentPositionToRegister(int reg);
55 virtual void SetCurrentPositionFromRegister(int reg);
56 virtual void WriteStackPointerToRegister(int reg);
57 virtual void SetStackPointerFromRegister(int reg);
55 virtual void LoadCurrentCharacter(int cp_offset, Label* on_end_of_input); 58 virtual void LoadCurrentCharacter(int cp_offset, Label* on_end_of_input);
56 virtual void CheckCharacterLT(uc16 limit, Label* on_less); 59 virtual void CheckCharacterLT(uc16 limit, Label* on_less);
57 virtual void CheckCharacterGT(uc16 limit, Label* on_greater); 60 virtual void CheckCharacterGT(uc16 limit, Label* on_greater);
61 virtual void CheckCharacter(uc16 c, Label* on_equal);
62 virtual void CheckNotCharacter(uc16 c, Label* on_not_equal);
58 virtual void CheckCharacters(Vector<const uc16> str, 63 virtual void CheckCharacters(Vector<const uc16> str,
59 int cp_offset, 64 int cp_offset,
60 Label* on_failure); 65 Label* on_failure);
61 virtual void CheckCurrentPosition(int register_index, Label* on_equal); 66 virtual void CheckCurrentPosition(int register_index, Label* on_equal);
62 virtual void CheckBitmap(uc16 start, Label* bitmap, Label* on_zero); 67 virtual void CheckBitmap(uc16 start, Label* bitmap, Label* on_zero);
63 virtual void DispatchHalfNibbleMap(uc16 start, 68 virtual void DispatchHalfNibbleMap(uc16 start,
64 Label* half_nibble_map, 69 Label* half_nibble_map,
65 const Vector<Label*>& destinations); 70 const Vector<Label*>& destinations);
66 virtual void DispatchByteMap(uc16 start, 71 virtual void DispatchByteMap(uc16 start,
67 Label* byte_map, 72 Label* byte_map,
68 const Vector<Label*>& destinations); 73 const Vector<Label*>& destinations);
69 virtual void DispatchHighByteMap(byte start, 74 virtual void DispatchHighByteMap(byte start,
70 Label* byte_map, 75 Label* byte_map,
71 const Vector<Label*>& destinations); 76 const Vector<Label*>& destinations);
72 virtual void IfRegisterLT(int register_index, int comparand, Label* if_lt); 77 virtual void IfRegisterLT(int register_index, int comparand, Label* if_lt);
73 virtual void IfRegisterGE(int register_index, int comparand, Label* if_ge); 78 virtual void IfRegisterGE(int register_index, int comparand, Label* if_ge);
74 79
75 virtual Re2kImplementation Implementation(); 80 virtual Re2kImplementation Implementation();
76 virtual Handle<Object> GetCode(); 81 virtual Handle<Object> GetCode();
77 private: 82 private:
78 Re2kAssembler* assembler_; 83 Re2kAssembler* assembler_;
79 }; 84 };
80 85
81 } } // namespace v8::internal 86 } } // namespace v8::internal
82 87
83 #endif // V8_REGEXP_MACRO_ASSEMBLER_RE2K_H_ 88 #endif // V8_REGEXP_MACRO_ASSEMBLER_RE2K_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698