Blame src/output.hpp

Packit Service 7770af
#ifndef SASS_OUTPUT_H
Packit Service 7770af
#define SASS_OUTPUT_H
Packit Service 7770af
Packit Service 7770af
#include <string>
Packit Service 7770af
#include <vector>
Packit Service 7770af
Packit Service 7770af
#include "util.hpp"
Packit Service 7770af
#include "inspect.hpp"
Packit Service 7770af
#include "operation.hpp"
Packit Service 7770af
Packit Service 7770af
namespace Sass {
Packit Service 7770af
  class Context;
Packit Service 7770af
Packit Service 7770af
  // Refactor to make it generic to find linefeed (look behind)
Packit Service 7770af
  inline bool ends_with(std::string const & value, std::string const & ending)
Packit Service 7770af
  {
Packit Service 7770af
    if (ending.size() > value.size()) return false;
Packit Service 7770af
    return std::equal(ending.rbegin(), ending.rend(), value.rbegin());
Packit Service 7770af
  }
Packit Service 7770af
Packit Service 7770af
  class Output : public Inspect {
Packit Service 7770af
  protected:
Packit Service 7770af
    using Inspect::operator();
Packit Service 7770af
Packit Service 7770af
  public:
Packit Service 7770af
    Output(Sass_Output_Options& opt);
Packit Service 7770af
    virtual ~Output();
Packit Service 7770af
Packit Service 7770af
  protected:
Packit Service 7770af
    std::string charset;
Packit Service 7770af
    std::vector<AST_Node_Ptr> top_nodes;
Packit Service 7770af
Packit Service 7770af
  public:
Packit Service 7770af
    OutputBuffer get_buffer(void);
Packit Service 7770af
Packit Service 7770af
    virtual void operator()(Map_Ptr);
Packit Service 7770af
    virtual void operator()(Ruleset_Ptr);
Packit Service 7770af
    virtual void operator()(Supports_Block_Ptr);
Packit Service 7770af
    virtual void operator()(Media_Block_Ptr);
Packit Service 7770af
    virtual void operator()(Directive_Ptr);
Packit Service 7770af
    virtual void operator()(Keyframe_Rule_Ptr);
Packit Service 7770af
    virtual void operator()(Import_Ptr);
Packit Service 7770af
    virtual void operator()(Comment_Ptr);
Packit Service 7770af
    virtual void operator()(Number_Ptr);
Packit Service 7770af
    virtual void operator()(String_Quoted_Ptr);
Packit Service 7770af
    virtual void operator()(String_Constant_Ptr);
Packit Service 7770af
Packit Service 7770af
    void fallback_impl(AST_Node_Ptr n);
Packit Service 7770af
Packit Service 7770af
  };
Packit Service 7770af
Packit Service 7770af
}
Packit Service 7770af
Packit Service 7770af
#endif