19 #ifndef NET_INSTAWEB_REWRITER_PUBLIC_CSS_MINIFY_H_
20 #define NET_INSTAWEB_REWRITER_PUBLIC_CSS_MINIFY_H_
22 #include "pagespeed/kernel/base/basictypes.h"
23 #include "pagespeed/kernel/base/string_util.h"
31 class MediaExpression;
36 class SimpleSelectors;
41 class FunctionParameters;
47 namespace net_instaweb {
56 static bool Stylesheet(
const Css::Stylesheet& stylesheet,
58 MessageHandler* handler);
61 static bool Declarations(
const Css::Declarations& declarations,
63 MessageHandler* handler);
66 CssMinify(Writer* writer, MessageHandler* handler);
69 void Write(
const StringPiece& str);
70 void WriteURL(
const UnicodeText& url);
72 template<
typename Container>
73 void JoinMinify(
const Container& container,
const StringPiece& sep);
74 template<
typename Iterator>
75 void JoinMinifyIter(
const Iterator& begin,
const Iterator& end,
76 const StringPiece& sep);
80 void Minify(
const Css::Stylesheet& stylesheet);
81 void Minify(
const Css::Charsets& charsets);
82 void Minify(
const Css::Import&
import);
83 void Minify(
const Css::MediaQuery& media_query);
84 void Minify(
const Css::MediaExpression& expression);
85 void Minify(
const Css::Selector& selector);
86 void Minify(
const Css::SimpleSelectors& sselectors,
bool isfirst =
false);
87 void Minify(
const Css::SimpleSelector& sselector);
88 void Minify(
const Css::Declaration& declaration);
89 void Minify(
const Css::Value& value);
90 void Minify(
const Css::FunctionParameters& parameters);
91 void Minify(
const Css::UnparsedRegion& unparsed_region);
98 void MinifyMediaStart(
const Css::MediaQueries& media_queries);
100 void MinifyMediaEnd(
const Css::MediaQueries& media_queries);
103 void MinifyFontFaceIgnoringMedia(
const Css::FontFace& font_face);
104 void MinifyRulesetIgnoringMedia(
const Css::Ruleset& ruleset);
107 void MinifyFont(
const Css::Values& font_values);
109 bool Equals(
const Css::MediaQueries& a,
const Css::MediaQueries& b)
const;
110 bool Equals(
const Css::MediaQuery& a,
const Css::MediaQuery& b)
const;
111 bool Equals(
const Css::MediaExpression& a,
112 const Css::MediaExpression& b)
const;
115 MessageHandler* handler_;
static bool Declarations(const Css::Declarations &declarations, Writer *writer, MessageHandler *handler)
Write minified Declarations (style attribute contents).
static bool Stylesheet(const Css::Stylesheet &stylesheet, Writer *writer, MessageHandler *handler)
Write minified Stylesheet.
Definition: css_minify.h:53