Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
node-sass
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
楚学文
node-sass
Commits
d64401f9
Commit
d64401f9
authored
Mar 21, 2012
by
Aaron Leung
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixed a weird breakage caused by an accidentally commented line.
parent
cb03bb0b
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
35 additions
and
26 deletions
+35
-26
document_parser.cpp
document_parser.cpp
+1
-0
lists.scss
lists.scss
+2
-24
node.cpp
node.cpp
+1
-1
prelexer.cpp
prelexer.cpp
+25
-0
prelexer.hpp
prelexer.hpp
+2
-0
unit-test-prelexer.cpp
unit-test-prelexer.cpp
+4
-1
No files found.
document_parser.cpp
View file @
d64401f9
...
@@ -373,6 +373,7 @@ namespace Sass {
...
@@ -373,6 +373,7 @@ namespace Sass {
if
(
lex
<
exactly
<
'('
>
>
())
{
if
(
lex
<
exactly
<
'('
>
>
())
{
Node
value
(
parse_list
());
Node
value
(
parse_list
());
value
.
parenthesized
=
true
;
value
.
parenthesized
=
true
;
lex
<
exactly
<
')'
>
>
();
return
value
;
return
value
;
}
}
else
{
else
{
...
...
lists.scss
View file @
d64401f9
$x
:
1
2
3
;
div
{
div
{
a
:
42
$x
43
;
a
:
b
c
d
;
b
:
1
,
2
3
,
4
;
c
:
1
/
2
;
d
:
(
10px
/
3em
);
d
:
(
10
/
5px
);
}
}
\ No newline at end of file
/*div {
a: a, b, c, d;
b: a b, c d;
c: a (b, c) d;
e: $x;
f: 20px / 10;
g: (1 (9*2))/3;
h: (1/2 3/4 5/6);
i: 4 - (2) 3;
j: 3 + $x;
}
*/
\ No newline at end of file
node.cpp
View file @
d64401f9
...
@@ -110,7 +110,7 @@ namespace Sass {
...
@@ -110,7 +110,7 @@ namespace Sass {
}
break
;
}
break
;
default
:
{
default
:
{
//
return string(token);
return
string
(
token
);
}
break
;
}
break
;
}
}
}
}
...
...
prelexer.cpp
View file @
d64401f9
...
@@ -140,6 +140,24 @@ namespace Sass {
...
@@ -140,6 +140,24 @@ namespace Sass {
const
char
*
percentage
(
const
char
*
src
)
{
const
char
*
percentage
(
const
char
*
src
)
{
return
sequence
<
number
,
exactly
<
'%'
>
>
(
src
);
return
sequence
<
number
,
exactly
<
'%'
>
>
(
src
);
}
}
extern
const
char
em_kwd
[]
=
"em"
;
extern
const
char
ex_kwd
[]
=
"ex"
;
extern
const
char
px_kwd
[]
=
"px"
;
extern
const
char
cm_kwd
[]
=
"cm"
;
extern
const
char
mm_kwd
[]
=
"mm"
;
extern
const
char
in_kwd
[]
=
"in"
;
extern
const
char
pt_kwd
[]
=
"pt"
;
extern
const
char
pc_kwd
[]
=
"pc"
;
extern
const
char
deg_kwd
[]
=
"deg"
;
extern
const
char
rad_kwd
[]
=
"rad"
;
extern
const
char
grad_kwd
[]
=
"grad"
;
extern
const
char
ms_kwd
[]
=
"ms"
;
extern
const
char
s_kwd
[]
=
"s"
;
extern
const
char
Hz_kwd
[]
=
"Hz"
;
extern
const
char
kHz_kwd
[]
=
"kHz"
;
const
char
*
em
(
const
char
*
src
)
{
return
sequence
<
number
,
exactly
<
em_kwd
>
>
(
src
);
}
const
char
*
dimension
(
const
char
*
src
)
{
const
char
*
dimension
(
const
char
*
src
)
{
return
sequence
<
number
,
identifier
>
(
src
);
return
sequence
<
number
,
identifier
>
(
src
);
}
}
...
@@ -157,6 +175,13 @@ namespace Sass {
...
@@ -157,6 +175,13 @@ namespace Sass {
optional
<
spaces
>
,
optional
<
spaces
>
,
exactly
<
')'
>
>
(
src
);
exactly
<
')'
>
>
(
src
);
}
}
// Match CSS "!important" keyword.
extern
const
char
important_kwd
[]
=
"important"
;
const
char
*
important
(
const
char
*
src
)
{
return
sequence
<
exactly
<
'!'
>
,
spaces_and_comments
,
exactly
<
important_kwd
>
>
(
src
);
}
// Match CSS pseudo-class/element prefixes.
// Match CSS pseudo-class/element prefixes.
const
char
*
pseudo_prefix
(
const
char
*
src
)
{
const
char
*
pseudo_prefix
(
const
char
*
src
)
{
return
sequence
<
exactly
<
':'
>
,
optional
<
exactly
<
':'
>
>
>
(
src
);
return
sequence
<
exactly
<
':'
>
,
optional
<
exactly
<
':'
>
>
>
(
src
);
...
...
prelexer.hpp
View file @
d64401f9
...
@@ -294,6 +294,8 @@ namespace Sass {
...
@@ -294,6 +294,8 @@ namespace Sass {
const
char
*
hex
(
const
char
*
src
);
const
char
*
hex
(
const
char
*
src
);
// Match CSS uri specifiers.
// Match CSS uri specifiers.
const
char
*
uri
(
const
char
*
src
);
const
char
*
uri
(
const
char
*
src
);
// Match CSS "!important" keyword.
const
char
*
important
(
const
char
*
src
);
// Match CSS pseudo-class/element prefixes
// Match CSS pseudo-class/element prefixes
const
char
*
pseudo_prefix
(
const
char
*
src
);
const
char
*
pseudo_prefix
(
const
char
*
src
);
// Match CSS function call openers.
// Match CSS function call openers.
...
...
unit-test-prelexer.cpp
View file @
d64401f9
...
@@ -57,13 +57,15 @@ char nonbi1[] = "- n+2";
...
@@ -57,13 +57,15 @@ char nonbi1[] = "- n+2";
char
fld1
[]
=
"blah/bloo/foo.txt"
;
char
fld1
[]
=
"blah/bloo/foo.txt"
;
char
fld2
[]
=
"/bloo/blee"
;
char
fld2
[]
=
"/bloo/blee"
;
char
nonfld1
[]
=
"blah.txt"
;
char
nonfld1
[]
=
"blah.txt"
;
char
imp1
[]
=
"! /*hey*/ important;"
;
char
nonimp1
[]
=
"!imblah"
;
extern
const
char
slash_star
[]
=
"/*"
;
extern
const
char
slash_star
[]
=
"/*"
;
prelexer
ptr
=
0
;
prelexer
ptr
=
0
;
template
<
prelexer
mx
>
template
<
prelexer
mx
>
void
try_and_set
(
char
*
src
)
{
void
try_and_set
(
char
*
src
)
{
char
*
p
=
mx
(
src
);
c
onst
c
har
*
p
=
mx
(
src
);
if
(
p
)
ptr
=
mx
;
if
(
p
)
ptr
=
mx
;
}
}
...
@@ -108,6 +110,7 @@ int main() {
...
@@ -108,6 +110,7 @@ int main() {
check_twice
(
folder
,
fld2
,
nonfld1
);
check_twice
(
folder
,
fld2
,
nonfld1
);
check_twice
(
folders
,
fld1
,
nonfld1
);
check_twice
(
folders
,
fld1
,
nonfld1
);
check_twice
(
folders
,
fld2
,
nonfld1
);
check_twice
(
folders
,
fld2
,
nonfld1
);
check_twice
(
important
,
imp1
,
nonimp1
);
cout
<<
count_interval
<
'\n'
>
(
ws1
,
spaces_and_comments
(
ws1
))
<<
endl
;
cout
<<
count_interval
<
'\n'
>
(
ws1
,
spaces_and_comments
(
ws1
))
<<
endl
;
cout
<<
count_interval
<
'*'
>
(
ws1
,
spaces_and_comments
(
ws1
))
<<
endl
;
cout
<<
count_interval
<
'*'
>
(
ws1
,
spaces_and_comments
(
ws1
))
<<
endl
;
cout
<<
count_interval
<
exactly
<
slash_star
>
>
(
ws1
,
spaces_and_comments
(
ws1
))
<<
endl
;
cout
<<
count_interval
<
exactly
<
slash_star
>
>
(
ws1
,
spaces_and_comments
(
ws1
))
<<
endl
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment