summaryrefslogtreecommitdiffstats
path: root/src/char-predicates.h
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2014-11-26 15:28:44 +0000
committerBen Murdoch <benm@google.com>2014-12-04 14:47:29 +0000
commitb8a8cc1952d61a2f3a2568848933943a543b5d3e (patch)
tree83e9846202f2a441db91efdd164d7d8478ba9897 /src/char-predicates.h
parentb7a971bd8c35b5952b1f25fca56de6113506d3da (diff)
downloadandroid_external_v8-b8a8cc1952d61a2f3a2568848933943a543b5d3e.tar.gz
android_external_v8-b8a8cc1952d61a2f3a2568848933943a543b5d3e.tar.bz2
android_external_v8-b8a8cc1952d61a2f3a2568848933943a543b5d3e.zip
Upgrade to 3.29
Update V8 to 3.29.88.17 and update makefiles to support building on all the relevant platforms. Bug: 17370214 Change-Id: Ia3407c157fd8d72a93e23d8318ccaf6ecf77fa4e
Diffstat (limited to 'src/char-predicates.h')
-rw-r--r--src/char-predicates.h52
1 files changed, 26 insertions, 26 deletions
diff --git a/src/char-predicates.h b/src/char-predicates.h
index b97191f5..b7c5d423 100644
--- a/src/char-predicates.h
+++ b/src/char-predicates.h
@@ -1,34 +1,11 @@
// Copyright 2011 the V8 project authors. All rights reserved.
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following
-// disclaimer in the documentation and/or other materials provided
-// with the distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived
-// from this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
#ifndef V8_CHAR_PREDICATES_H_
#define V8_CHAR_PREDICATES_H_
-#include "unicode.h"
+#include "src/unicode.h"
namespace v8 {
namespace internal {
@@ -40,6 +17,8 @@ inline bool IsCarriageReturn(uc32 c);
inline bool IsLineFeed(uc32 c);
inline bool IsDecimalDigit(uc32 c);
inline bool IsHexDigit(uc32 c);
+inline bool IsOctalDigit(uc32 c);
+inline bool IsBinaryDigit(uc32 c);
inline bool IsRegExpWord(uc32 c);
inline bool IsRegExpNewline(uc32 c);
@@ -64,6 +43,27 @@ struct IdentifierPart {
}
};
+
+// WhiteSpace according to ECMA-262 5.1, 7.2.
+struct WhiteSpace {
+ static inline bool Is(uc32 c) {
+ return c == 0x0009 || // <TAB>
+ c == 0x000B || // <VT>
+ c == 0x000C || // <FF>
+ c == 0xFEFF || // <BOM>
+ // \u0020 and \u00A0 are included in unibrow::WhiteSpace.
+ unibrow::WhiteSpace::Is(c);
+ }
+};
+
+
+// WhiteSpace and LineTerminator according to ECMA-262 5.1, 7.2 and 7.3.
+struct WhiteSpaceOrLineTerminator {
+ static inline bool Is(uc32 c) {
+ return WhiteSpace::Is(c) || unibrow::LineTerminator::Is(c);
+ }
+};
+
} } // namespace v8::internal
#endif // V8_CHAR_PREDICATES_H_