about summary refs log tree commit diff stats
path: root/src/css
diff options
context:
space:
mode:
authorbptato <nincsnevem662@gmail.com>2022-01-24 17:22:50 +0100
committerbptato <nincsnevem662@gmail.com>2022-01-24 17:22:50 +0100
commitcd8ca0faa258a3387f9875c7a6f534743b45f817 (patch)
treedce2d7a45969664cae90f96f32e33d6e8011a07f /src/css
parent7cb534fd1fb2cbd0a338ba22457e18ba8cb57f78 (diff)
downloadchawan-cd8ca0faa258a3387f9875c7a6f534743b45f817.tar.gz
Refactor
Diffstat (limited to 'src/css')
-rw-r--r--src/css/cascade.nim2
-rw-r--r--src/css/parser.nim38
-rw-r--r--src/css/select.nim2
-rw-r--r--src/css/selparser.nim8
-rw-r--r--src/css/values.nim4
5 files changed, 16 insertions, 38 deletions
diff --git a/src/css/cascade.nim b/src/css/cascade.nim
index 0e481a10..aea064b0 100644
--- a/src/css/cascade.nim
+++ b/src/css/cascade.nim
@@ -161,7 +161,7 @@ func applyMediaQuery(ss: CSSStylesheet): CSSStylesheet =
       if rule.query.applies():
         result.add(rule.children.applyMediaQuery())
 
-proc applyRules*(document: Document, ua, user: CSSStylesheet) =
+proc applyRules(document: Document, ua, user: CSSStylesheet) =
   var stack: seq[Element]
 
   var embedded_rules: seq[CSSStylesheet]
diff --git a/src/css/parser.nim b/src/css/parser.nim
index f71ed033..0277bf41 100644
--- a/src/css/parser.nim
+++ b/src/css/parser.nim
@@ -25,9 +25,9 @@ type
     at: int
     top_level: bool
 
-  tflaga = enum
+  tflaga* = enum
     TFLAGA_UNRESTRICTED, TFLAGA_ID
-  tflagb = enum
+  tflagb* = enum
     TFLAGB_INTEGER, TFLAGB_NUMBER
 
   CSSParsedItem* = ref object of RootObj
@@ -74,7 +74,8 @@ type
 
   SyntaxError = object of ValueError
 
-func `$`*(c: CSSParsedItem): string =
+# For debugging
+template `$`*(c: CSSParsedItem): string =
   if c of CSSToken:
     case CSSToken(c).tokenType:
     of CSS_FUNCTION_TOKEN, CSS_AT_KEYWORD_TOKEN, CSS_URL_TOKEN:
@@ -136,10 +137,10 @@ func `$`*(c: CSSParsedItem): string =
 func `==`*(a: CSSParsedItem, b: CSSTokenType): bool =
   return a of CSSToken and CSSToken(a).tokenType == b
 
-func isNameStartCodePoint*(r: Rune): bool =
+func isNameStartCodePoint(r: Rune): bool =
   return not isAscii(r) or r == Rune('_') or isAlphaAscii(r)
 
-func isNameCodePoint*(r: Rune): bool =
+func isNameCodePoint(r: Rune): bool =
   return isNameStartCodePoint(r) or isDigitAscii(r) or r == Rune('-')
 
 proc consume(state: var CSSTokenizerState): Rune =
@@ -160,10 +161,10 @@ proc has(state: var CSSTokenizerState, i: int = 0): bool =
 func curr(state: CSSTokenizerState): Rune =
   return state.buf[state.at]
 
-proc isValidEscape*(state: var CSSTokenizerState): bool =
+proc isValidEscape(state: var CSSTokenizerState): bool =
   return state.has(1) and state.curr() == Rune('\\') and state.peek(1) != Rune('\n')
 
-proc startsWithIdentifier*(state: var CSSTokenizerState): bool =
+proc startsWithIdentifier(state: var CSSTokenizerState): bool =
   if not state.has():
     return false
 
@@ -180,7 +181,7 @@ proc startsWithIdentifier*(state: var CSSTokenizerState): bool =
 
   return false
 
-proc startsWithNumber*(state: var CSSTokenizerState): bool =
+proc startsWithNumber(state: var CSSTokenizerState): bool =
   if state.has():
     case state.curr()
     of Rune('+'), Rune('-'):
@@ -810,24 +811,3 @@ proc parseCSS*(inputStream: Stream): CSSRawStylesheet =
   if inputStream.atEnd():
     return CSSRawStylesheet()
   return inputstream.parseStylesheet()
-
-proc debugparseCSS*(inputStream: Stream) =
-  let ss = inputStream.parseStylesheet()
-  for v in ss.value:
-    if v of CSSAtRule:
-      eprint CSSAtRule(v).name
-    else:
-      for c in CSSQualifiedRule(v).prelude:
-        eprint c
-    case v.oblock.token.tokenType
-    of CSS_LBRACE_TOKEN: eprint "\n{"
-    of CSS_LPAREN_TOKEN: eprint "("
-    of CSS_LBRACKET_TOKEN: eprint "["
-    else: discard
-    for s in v.oblock.value:
-      eprint s
-    case v.oblock.token.tokenType
-    of CSS_LBRACE_TOKEN: eprint "\n}"
-    of CSS_LPAREN_TOKEN: eprint ")"
-    of CSS_LBRACKET_TOKEN: eprint "]"
-    else: discard
diff --git a/src/css/select.nim b/src/css/select.nim
index 1bd45dcd..94cdd96f 100644
--- a/src/css/select.nim
+++ b/src/css/select.nim
@@ -187,7 +187,7 @@ func selectElems(document: Document, selectors: SelectorList): seq[Element] =
     result = result.filter((elem) => selectorMatches(elem, sellist[i]).psuccess)
     inc i
 
-proc querySelector*(document: Document, q: string): seq[Element] =
+proc querySelector(document: Document, q: string): seq[Element] =
   let ss = newStringStream(q)
   let cvals = parseListOfComponentValues(ss)
   let selectors = parseSelectors(cvals)
diff --git a/src/css/selparser.nim b/src/css/selparser.nim
index 9a953c54..c373bfbe 100644
--- a/src/css/selparser.nim
+++ b/src/css/selparser.nim
@@ -9,7 +9,7 @@ type
     UNIVERSAL_SELECTOR, PSEUDO_SELECTOR, PSELEM_SELECTOR, FUNC_SELECTOR,
     COMBINATOR_SELECTOR
 
-  QueryMode* = enum
+  QueryMode = enum
     QUERY_TYPE, QUERY_CLASS, QUERY_ATTR, QUERY_DELIM, QUERY_VALUE,
     QUERY_PSEUDO, QUERY_PSELEM, QUERY_DESC_COMBINATOR, QUERY_CHILD_COMBINATOR,
     QUERY_NEXT_SIBLING_COMBINATOR, QUERY_SUBSEQ_SIBLING_COMBINATOR
@@ -56,9 +56,9 @@ type
     sels*: seq[Selector]
     parent*: SelectorList
 
-proc add*(sellist: SelectorList, sel: Selector) = sellist.sels.add(sel)
-proc add*(sellist: SelectorList, sels: SelectorList) = sellist.sels.add(sels.sels)
-proc setLen*(sellist: SelectorList, i: int) = sellist.sels.setLen(i)
+proc add(sellist: SelectorList, sel: Selector) = sellist.sels.add(sel)
+proc add(sellist: SelectorList, sels: SelectorList) = sellist.sels.add(sels.sels)
+proc setLen(sellist: SelectorList, i: int) = sellist.sels.setLen(i)
 proc `[]`*(sellist: SelectorList, i: int): Selector = sellist.sels[i]
 proc len*(sellist: SelectorList): int = sellist.sels.len
 
diff --git a/src/css/values.nim b/src/css/values.nim
index e4f6e944..87ac9e2d 100644
--- a/src/css/values.nim
+++ b/src/css/values.nim
@@ -81,7 +81,7 @@ type
   
   CSSSpecifiedValue* = ref object
     t*: CSSPropertyType
-    case v*: CSSValueType
+    case v: CSSValueType
     of VALUE_COLOR:
       color*: CSSColor
     of VALUE_LENGTH:
@@ -106,8 +106,6 @@ type
 
   CSSSpecifiedValues* = ref array[CSSPropertyType, CSSSpecifiedValue]
 
-  CSSValues* = array[PseudoElem, CSSSpecifiedValues]
-
   CSSValueError* = object of ValueError
 
 const PropertyNames = {