com.google.caja.ancillary.servlet
Class HtmlReducer

java.lang.Object
  extended by com.google.caja.ancillary.servlet.HtmlReducer

final class HtmlReducer
extends java.lang.Object

Given a string of valid HTML 5 with well balanced start and end tags, removes unnecessary tags. Assumes that all tag names are lower-cased, as is the case with the output from the HTML renderer.

Author:
mikesamuel@gmail.com

Field Summary
private static java.util.Set<java.lang.String> DD_DL_CLOSERS
           
private static java.util.Set<java.lang.String> P_CLOSERS
           
private static java.util.Set<java.lang.String> RP_RT_CLOSERS
           
private static java.util.Set<java.lang.String> TBODY_CLOSERS
           
private static java.util.Set<java.lang.String> TBODY_OPENERS
           
private static java.util.Set<java.lang.String> THEAD_CLOSERS
           
 
Constructor Summary
HtmlReducer()
           
 
Method Summary
private static void emitToken(Token<HtmlTokenType> t, java.lang.StringBuilder out)
           
private static boolean isSpaceOrComment(Token<HtmlTokenType> t)
           
(package private) static void reduce(java.lang.String s, java.lang.StringBuilder out)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DD_DL_CLOSERS

private static final java.util.Set<java.lang.String> DD_DL_CLOSERS

RP_RT_CLOSERS

private static final java.util.Set<java.lang.String> RP_RT_CLOSERS

P_CLOSERS

private static final java.util.Set<java.lang.String> P_CLOSERS

THEAD_CLOSERS

private static final java.util.Set<java.lang.String> THEAD_CLOSERS

TBODY_OPENERS

private static final java.util.Set<java.lang.String> TBODY_OPENERS

TBODY_CLOSERS

private static final java.util.Set<java.lang.String> TBODY_CLOSERS
Constructor Detail

HtmlReducer

HtmlReducer()
Method Detail

reduce

static void reduce(java.lang.String s,
                   java.lang.StringBuilder out)
            throws ParseException
Throws:
ParseException

isSpaceOrComment

private static boolean isSpaceOrComment(Token<HtmlTokenType> t)

emitToken

private static void emitToken(Token<HtmlTokenType> t,
                              java.lang.StringBuilder out)


Copyright (C) 2008 Google Inc.
Licensed under the Apache License, Version 2.0