1 #ifndef SASS_SOURCE_MAP_H
2 #define SASS_SOURCE_MAP_H
7 #include "ast_fwd_decl.hpp"
8 #include "base64vlq.hpp"
9 #include "position.hpp"
10 #include "mapping.hpp"
12 #define VECTOR_PUSH(vec, ins) vec.insert(vec.end(), ins.begin(), ins.end())
13 #define VECTOR_UNSHIFT(vec, ins) vec.insert(vec.begin(), ins.begin(), ins.end())
23 std::vector<size_t> source_index;
25 SourceMap(const std::string& file);
27 void append(const Offset& offset);
28 void prepend(const Offset& offset);
29 void append(const OutputBuffer& out);
30 void prepend(const OutputBuffer& out);
31 void add_open_mapping(const AST_Node_Ptr node);
32 void add_close_mapping(const AST_Node_Ptr node);
34 std::string render_srcmap(Context &ctx);
35 ParserState remap(const ParserState& pstate);
39 std::string serialize_mappings();
41 std::vector<Mapping> mappings;
42 Position current_position;