| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2013, Opera Software ASA. All rights reserved. | 2 * Copyright (c) 2013, Opera Software ASA. 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 | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. 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 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 84 // Scan the literal |characters|. | 84 // Scan the literal |characters|. |
| 85 template<unsigned charactersCount> | 85 template<unsigned charactersCount> |
| 86 bool scan(const char (&characters)[charactersCount]); | 86 bool scan(const char (&characters)[charactersCount]); |
| 87 | 87 |
| 88 // Skip (advance the input pointer) as long as the specified | 88 // Skip (advance the input pointer) as long as the specified |
| 89 // |characterPredicate| returns true, and the input pointer is not passed | 89 // |characterPredicate| returns true, and the input pointer is not passed |
| 90 // the end of the input. | 90 // the end of the input. |
| 91 template<bool characterPredicate(UChar)> | 91 template<bool characterPredicate(UChar)> |
| 92 void skipWhile(); | 92 void skipWhile(); |
| 93 | 93 |
| 94 // Like skipWhile, but using a negated predicate. |
| 95 template<bool characterPredicate(UChar)> |
| 96 void skipUntil(); |
| 97 |
| 94 // Return the run of characters for which the specified | 98 // Return the run of characters for which the specified |
| 95 // |characterPredicate| returns true. The start of the run will be the | 99 // |characterPredicate| returns true. The start of the run will be the |
| 96 // current input pointer. | 100 // current input pointer. |
| 97 template<bool characterPredicate(UChar)> | 101 template<bool characterPredicate(UChar)> |
| 98 Run collectWhile(); | 102 Run collectWhile(); |
| 99 | 103 |
| 100 // Like collectWhile, but using a negated predicate. | 104 // Like collectWhile, but using a negated predicate. |
| 101 template<bool characterPredicate(UChar)> | 105 template<bool characterPredicate(UChar)> |
| 102 Run collectUntil(); | 106 Run collectUntil(); |
| 103 | 107 |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 159 template<bool characterPredicate(UChar)> | 163 template<bool characterPredicate(UChar)> |
| 160 inline void VTTScanner::skipWhile() | 164 inline void VTTScanner::skipWhile() |
| 161 { | 165 { |
| 162 if (m_is8Bit) | 166 if (m_is8Bit) |
| 163 ::skipWhile<LChar, LCharPredicateAdapter<characterPredicate> >(m_data.ch
aracters8, m_end.characters8); | 167 ::skipWhile<LChar, LCharPredicateAdapter<characterPredicate> >(m_data.ch
aracters8, m_end.characters8); |
| 164 else | 168 else |
| 165 ::skipWhile<UChar, characterPredicate>(m_data.characters16, m_end.charac
ters16); | 169 ::skipWhile<UChar, characterPredicate>(m_data.characters16, m_end.charac
ters16); |
| 166 } | 170 } |
| 167 | 171 |
| 168 template<bool characterPredicate(UChar)> | 172 template<bool characterPredicate(UChar)> |
| 173 inline void VTTScanner::skipUntil() |
| 174 { |
| 175 if (m_is8Bit) |
| 176 ::skipUntil<LChar, LCharPredicateAdapter<characterPredicate> >(m_data.ch
aracters8, m_end.characters8); |
| 177 else |
| 178 ::skipUntil<UChar, characterPredicate>(m_data.characters16, m_end.charac
ters16); |
| 179 } |
| 180 |
| 181 template<bool characterPredicate(UChar)> |
| 169 inline VTTScanner::Run VTTScanner::collectWhile() | 182 inline VTTScanner::Run VTTScanner::collectWhile() |
| 170 { | 183 { |
| 171 if (m_is8Bit) { | 184 if (m_is8Bit) { |
| 172 const LChar* current = m_data.characters8; | 185 const LChar* current = m_data.characters8; |
| 173 ::skipWhile<LChar, LCharPredicateAdapter<characterPredicate> >(current,
m_end.characters8); | 186 ::skipWhile<LChar, LCharPredicateAdapter<characterPredicate> >(current,
m_end.characters8); |
| 174 return Run(position(), current, m_is8Bit); | 187 return Run(position(), current, m_is8Bit); |
| 175 } | 188 } |
| 176 const UChar* current = m_data.characters16; | 189 const UChar* current = m_data.characters16; |
| 177 ::skipWhile<UChar, characterPredicate>(current, m_end.characters16); | 190 ::skipWhile<UChar, characterPredicate>(current, m_end.characters16); |
| 178 return Run(position(), reinterpret_cast<Position>(current), m_is8Bit); | 191 return Run(position(), reinterpret_cast<Position>(current), m_is8Bit); |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 241 unsigned* m_outPosition; | 254 unsigned* m_outPosition; |
| 242 union { | 255 union { |
| 243 const LChar* characters8; | 256 const LChar* characters8; |
| 244 const UChar* characters16; | 257 const UChar* characters16; |
| 245 } m_start; | 258 } m_start; |
| 246 }; | 259 }; |
| 247 | 260 |
| 248 } | 261 } |
| 249 | 262 |
| 250 #endif | 263 #endif |
| OLD | NEW |