chromium/third_party/blink/renderer/core/css/parser/css_supports_parser.cc

// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "third_party/blink/renderer/core/css/parser/css_supports_parser.h"

#include "third_party/blink/renderer/core/css/css_identifier_value.h"
#include "third_party/blink/renderer/core/css/parser/css_parser_impl.h"
#include "third_party/blink/renderer/core/css/parser/css_parser_token_stream.h"
#include "third_party/blink/renderer/core/css/parser/css_selector_parser.h"
#include "third_party/blink/renderer/core/css/properties/css_parsing_utils.h"
#include "third_party/blink/renderer/core/css_value_keywords.h"
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"

namespace blink {

AtIdent;
ConsumeAnyValue;
ConsumeIfIdent;

CSSSupportsParser::Result CSSSupportsParser::ConsumeSupportsCondition(
    CSSParserTokenStream& stream,
    CSSParserImpl& parser) {}

//
// Every non-static Consume function should:
//
//  1. Assume that the calling function already consumed whitespace.
//  2. Clean up trailing whitespace if a supported condition was consumed.
//  3. Otherwise, leave the stream untouched.
//

// <supports-condition> = not <supports-in-parens>
//                   | <supports-in-parens> [ and <supports-in-parens> ]*
//                   | <supports-in-parens> [ or <supports-in-parens> ]*
CSSSupportsParser::Result CSSSupportsParser::ConsumeSupportsCondition(
    CSSParserTokenStream& stream) {}

// <supports-in-parens> = ( <supports-condition> )
//                    | <supports-feature>
//                    | <general-enclosed>
CSSSupportsParser::Result CSSSupportsParser::ConsumeSupportsInParens(
    CSSParserTokenStream& stream) {}

// https://drafts.csswg.org/css-conditional-4/#at-supports-ext
// <supports-feature> = <supports-selector-fn> | <supports-font-tech-fn>
//                    | <supports-font-format-fn> | <supports-decl>
bool CSSSupportsParser::ConsumeSupportsFeature(CSSParserTokenStream& stream) {}

// <supports-selector-fn> = selector( <complex-selector> )
bool CSSSupportsParser::ConsumeSupportsSelectorFn(
    CSSParserTokenStream& stream) {}

bool CSSSupportsParser::ConsumeFontFormatFn(CSSParserTokenStream& stream) {}

bool CSSSupportsParser::ConsumeFontTechFn(CSSParserTokenStream& stream) {}

// <supports-decl> = ( <declaration> )
bool CSSSupportsParser::ConsumeSupportsDecl(CSSParserTokenStream& stream) {}

// <general-enclosed> = [ <function-token> <any-value>? ) ]
//                  | ( <any-value>? )
bool CSSSupportsParser::ConsumeGeneralEnclosed(CSSParserTokenStream& stream) {}

bool CSSSupportsParser::ConsumeBlinkFeatureFn(CSSParserTokenStream& stream) {}

}  // namespace blink