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

Unified Diff: Source/core/html/track/vtt/VTTToken.h

Issue 77553004: Defer setting type in the WebVTT tokenizer until emitting the token (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 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 side-by-side diff with in-line comments
Download patch
Index: Source/core/html/track/vtt/VTTToken.h
diff --git a/Source/core/html/track/vtt/VTTToken.h b/Source/core/html/track/vtt/VTTToken.h
index fe3cf07d77bca2ec9702777d882b7876efcb8dd2..39c3d69e0b5d882bf4a2979157f1b9f46c7f2a57 100644
--- a/Source/core/html/track/vtt/VTTToken.h
+++ b/Source/core/html/track/vtt/VTTToken.h
@@ -56,12 +56,12 @@ public:
void appendToName(UChar character)
{
- ASSERT(m_type == VTTTokenTypes::StartTag || m_type == VTTTokenTypes::EndTag);
ASSERT(character);
m_data.append(character);
}
Type::Type type() const { return m_type; }
+ void setType(Type::Type type) { m_type = type; }
StringBuilder& name()
{
@@ -70,70 +70,49 @@ public:
StringBuilder& characters()
{
- ASSERT(m_type == Type::Character || m_type == Type::TimestampTag);
return m_data;
}
- // Starting a character token works slightly differently than starting
- // other types of tokens because we want to save a per-character branch.
- void ensureIsCharacterToken()
- {
- ASSERT(m_type == Type::Uninitialized || m_type == Type::Character);
- m_type = Type::Character;
- }
-
void appendToCharacter(char character)
{
- ASSERT(m_type == Type::Character);
m_data.append(character);
}
void appendToCharacter(UChar character)
{
- ASSERT(m_type == Type::Character);
m_data.append(character);
}
void appendToCharacter(const StringBuilder& characters)
{
- ASSERT(m_type == Type::Character);
m_data.append(characters);
}
void beginEmptyStartTag()
{
- ASSERT(m_type == Type::Uninitialized);
- m_type = Type::StartTag;
m_data.clear();
}
void beginStartTag(UChar character)
{
ASSERT(character);
- ASSERT(m_type == Type::Uninitialized);
- m_type = Type::StartTag;
m_data.append(character);
}
void beginEndTag(LChar character)
{
- ASSERT(m_type == Type::Uninitialized);
- m_type = Type::EndTag;
m_data.append(character);
}
void beginTimestampTag(UChar character)
jochen (gone - plz use gerrit) 2013/11/20 14:09:37 what's the point of having all this different meth
{
ASSERT(character);
- ASSERT(m_type == Type::Uninitialized);
- m_type = Type::TimestampTag;
m_data.append(character);
}
void appendToTimestamp(UChar character)
{
ASSERT(character);
- ASSERT(m_type == Type::TimestampTag);
m_data.append(character);
}
@@ -144,7 +123,6 @@ public:
void addNewClass()
{
- ASSERT(m_type == Type::StartTag);
if (!m_classes.isEmpty())
m_classes.append(' ');
m_classes.append(m_currentBuffer);
@@ -163,7 +141,6 @@ public:
void addNewAnnotation()
{
- ASSERT(m_type == Type::StartTag);
m_annotation.clear();
m_annotation.append(m_currentBuffer);
m_currentBuffer.clear();
@@ -187,7 +164,6 @@ private:
void appendToStartType(UChar character)
{
ASSERT(character);
- ASSERT(m_type == Type::StartTag);
m_currentBuffer.append(character);
}

Powered by Google App Engine
This is Rietveld 408576698