Sha256: 8419c07e7a6bc7712f3d15a42d15b9fa9652511f0158228bfbae15fb8f4d3e47

Contents?: true

Size: 1.88 KB

Versions: 25

Compression:

Stored size: 1.88 KB

Contents

#ifndef SASS_EXPAND_H
#define SASS_EXPAND_H

#include <vector>

#include "ast.hpp"
#include "eval.hpp"
#include "operation.hpp"
#include "environment.hpp"

namespace Sass {

  class Listize;
  class Context;
  class Eval;
  struct Backtrace;

  class Expand : public Operation_CRTP<Statement*, Expand> {
  public:

    Env* environment();
    Selector_List_Obj selector();

    Context&          ctx;
    Backtraces&       traces;
    Eval              eval;
    size_t            recursions;
    bool              in_keyframes;
    bool              at_root_without_rule;
    bool              old_at_root_without_rule;

    // it's easier to work with vectors
    EnvStack      env_stack;
    BlockStack    block_stack;
    CallStack     call_stack;
    SelectorStack selector_stack;
    MediaStack    media_stack;

    Boolean_Obj bool_true;

  private:
    void expand_selector_list(Selector_Obj, Selector_List_Obj extender);

  public:
    Expand(Context&, Env*, SelectorStack* stack = NULL);
    ~Expand() { }

    Block* operator()(Block*);
    Statement* operator()(Ruleset*);
    Statement* operator()(Media_Block*);
    Statement* operator()(Supports_Block*);
    Statement* operator()(At_Root_Block*);
    Statement* operator()(Directive*);
    Statement* operator()(Declaration*);
    Statement* operator()(Assignment*);
    Statement* operator()(Import*);
    Statement* operator()(Import_Stub*);
    Statement* operator()(Warning*);
    Statement* operator()(Error*);
    Statement* operator()(Debug*);
    Statement* operator()(Comment*);
    Statement* operator()(If*);
    Statement* operator()(For*);
    Statement* operator()(Each*);
    Statement* operator()(While*);
    Statement* operator()(Return*);
    Statement* operator()(Extension*);
    Statement* operator()(Definition*);
    Statement* operator()(Mixin_Call*);
    Statement* operator()(Content*);

    void append_block(Block*);

  };

}

#endif

Version data entries

25 entries across 16 versions & 2 rubygems

Version Path
zuora_connect_ui-0.10.0 vendor/ruby/2.6.0/gems/sassc-2.1.0-x86_64-linux/ext/libsass/src/expand.hpp
zuora_connect_ui-0.10.0 vendor/ruby/2.6.0/gems/sassc-2.2.1/ext/libsass/src/expand.hpp
zuora_connect_ui-0.10.0 vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/expand.hpp
zuora_connect_ui-0.9.2 vendor/ruby/2.6.0/gems/sassc-2.2.1/ext/libsass/src/expand.hpp
zuora_connect_ui-0.9.2 vendor/ruby/2.6.0/gems/sassc-2.1.0-x86_64-linux/ext/libsass/src/expand.hpp
zuora_connect_ui-0.9.2 vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/expand.hpp
zuora_connect_ui-0.9.1 vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/expand.hpp
zuora_connect_ui-0.9.1 vendor/ruby/2.6.0/gems/sassc-2.2.1/ext/libsass/src/expand.hpp
zuora_connect_ui-0.9.1 vendor/ruby/2.6.0/gems/sassc-2.1.0-x86_64-linux/ext/libsass/src/expand.hpp
zuora_connect_ui-0.9.0 vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/expand.hpp
zuora_connect_ui-0.9.0 vendor/ruby/2.6.0/gems/sassc-2.2.1/ext/libsass/src/expand.hpp
zuora_connect_ui-0.9.0 vendor/ruby/2.6.0/gems/sassc-2.1.0-x86_64-linux/ext/libsass/src/expand.hpp
sassc-2.2.1 ext/libsass/src/expand.hpp
zuora_connect_ui-0.8.3 vendor/ruby/2.6.0/gems/sassc-2.1.0-x86_64-linux/ext/libsass/src/expand.hpp
zuora_connect_ui-0.8.3 vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/expand.hpp
sassc-2.2.0 ext/libsass/src/expand.hpp
zuora_connect_ui-0.8.2 vendor/ruby/2.6.0/gems/sassc-2.1.0-x86_64-linux/ext/libsass/src/expand.hpp
sassc-2.1.0-x86_64-linux ext/libsass/src/expand.hpp
sassc-2.1.0 ext/libsass/src/expand.hpp
sassc-2.1.0.pre3-x86_64-linux ext/libsass/src/expand.hpp