Skip to content

Commit a3020db

Browse files
committed
Rename parentize to resolve_parent_refs
Also update the function signature. This better matches the Ruby Sass implementation.
1 parent 7592d7d commit a3020db

File tree

4 files changed

+11
-12
lines changed

4 files changed

+11
-12
lines changed

src/ast.cpp

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1084,28 +1084,27 @@ namespace Sass {
10841084

10851085
}
10861086

1087-
Selector_List* Selector_List::parentize(Selector_List* ps, Context& ctx, bool implicit_parent = true)
1087+
Selector_List* Selector_List::resolve_parent_refs(Context& ctx, Selector_List* ps, bool implicit_parent)
10881088
{
1089+
if (!this->has_parent_ref()/* && !implicit_parent*/) return this;
10891090
Selector_List* ss = SASS_MEMORY_NEW(ctx.mem, Selector_List, pstate());
10901091
for (size_t pi = 0, pL = ps->length(); pi < pL; ++pi) {
10911092
Selector_List* list = SASS_MEMORY_NEW(ctx.mem, Selector_List, pstate());
10921093
*list << (*ps)[pi];
10931094
for (size_t si = 0, sL = this->length(); si < sL; ++si) {
1094-
*ss += (*this)[si]->parentize(list, ctx, implicit_parent);
1095+
*ss += (*this)[si]->resolve_parent_refs(ctx, list, implicit_parent);
10951096
}
10961097
}
10971098
return ss;
10981099
}
10991100

1100-
Selector_List* Complex_Selector::parentize(Selector_List* parents, Context& ctx, bool implicit_parent)
1101+
Selector_List* Complex_Selector::resolve_parent_refs(Context& ctx, Selector_List* parents, bool implicit_parent)
11011102
{
1102-
if (!this->has_parent_ref()/* && !implicit_parent*/) return this;
1103-
11041103
Complex_Selector* tail = this->tail();
11051104
Compound_Selector* head = this->head();
11061105

1107-
// first parentize the tail (which may return an expanded list)
1108-
Selector_List* tails = tail ? tail->parentize(parents, ctx, implicit_parent) : 0;
1106+
// first resolve_parent_refs the tail (which may return an expanded list)
1107+
Selector_List* tails = tail ? tail->resolve_parent_refs(ctx, parents, implicit_parent) : 0;
11091108

11101109
if (head && head->length() > 0) {
11111110

@@ -1186,7 +1185,7 @@ namespace Sass {
11861185
for (Simple_Selector* ss : *head) {
11871186
if (Wrapped_Selector* ws = dynamic_cast<Wrapped_Selector*>(ss)) {
11881187
if (Selector_List* sl = dynamic_cast<Selector_List*>(ws->selector())) {
1189-
if (parents) ws->selector(sl->parentize(parents, ctx, implicit_parent));
1188+
if (parents) ws->selector(sl->resolve_parent_refs(ctx, parents, implicit_parent));
11901189
}
11911190
}
11921191
}

src/ast.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2404,7 +2404,7 @@ namespace Sass {
24042404
Complex_Selector* innermost() { return last(); };
24052405

24062406
size_t length() const;
2407-
Selector_List* parentize(Selector_List* parents, Context& ctx, bool implicit_parent = true);
2407+
Selector_List* resolve_parent_refs(Context& ctx, Selector_List* parents, bool implicit_parent);
24082408
virtual bool is_superselector_of(Compound_Selector* sub, std::string wrapping = "");
24092409
virtual bool is_superselector_of(Complex_Selector* sub, std::string wrapping = "");
24102410
virtual bool is_superselector_of(Selector_List* sub, std::string wrapping = "");
@@ -2517,7 +2517,7 @@ namespace Sass {
25172517
virtual bool has_parent_ref();
25182518
void remove_parent_selectors();
25192519
// virtual Selector_Placeholder* find_placeholder();
2520-
Selector_List* parentize(Selector_List* parents, Context& ctx, bool implicit_parent);
2520+
Selector_List* resolve_parent_refs(Context& ctx, Selector_List* parents, bool implicit_parent = true);
25212521
virtual bool is_superselector_of(Compound_Selector* sub, std::string wrapping = "");
25222522
virtual bool is_superselector_of(Complex_Selector* sub, std::string wrapping = "");
25232523
virtual bool is_superselector_of(Selector_List* sub, std::string wrapping = "");

src/eval.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1647,7 +1647,7 @@ namespace Sass {
16471647
Selector_List* Eval::operator()(Complex_Selector* s)
16481648
{
16491649
bool implicit_parent = !exp.old_at_root_without_rule;
1650-
return s->parentize(selector(), ctx, implicit_parent);
1650+
return s->resolve_parent_refs(ctx, selector(), implicit_parent);
16511651

16521652
}
16531653

src/functions.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1745,7 +1745,7 @@ namespace Sass {
17451745
for(;itr != parsedSelectors.end(); ++itr) {
17461746
Selector_List* child = *itr;
17471747
std::vector<Complex_Selector*> exploded;
1748-
Selector_List* rv = child->parentize(result, ctx, true);
1748+
Selector_List* rv = child->resolve_parent_refs(ctx, result);
17491749
for (size_t m = 0, mLen = rv->length(); m < mLen; ++m) {
17501750
exploded.push_back((*rv)[m]);
17511751
}

0 commit comments

Comments
 (0)