|
@@ -33,20 +33,20 @@ Type
|
|
FScanner: TCSSScanner;
|
|
FScanner: TCSSScanner;
|
|
FPrevious : TCSSToken;
|
|
FPrevious : TCSSToken;
|
|
FCurrent : TCSSToken;
|
|
FCurrent : TCSSToken;
|
|
- FCurrentTokenString : UTF8String;
|
|
|
|
|
|
+ FCurrentTokenString : TCSSString;
|
|
FPeekToken : TCSSToken;
|
|
FPeekToken : TCSSToken;
|
|
- FPeekTokenString : UTF8String;
|
|
|
|
|
|
+ FPeekTokenString : TCSSString;
|
|
FFreeScanner : Boolean;
|
|
FFreeScanner : Boolean;
|
|
FRuleLevel : Integer;
|
|
FRuleLevel : Integer;
|
|
function CreateElement(aClass: TCSSElementClass): TCSSElement;
|
|
function CreateElement(aClass: TCSSElementClass): TCSSElement;
|
|
class function GetAppendElement(aList: TCSSListElement): TCSSElement;
|
|
class function GetAppendElement(aList: TCSSListElement): TCSSElement;
|
|
function GetAtEOF: Boolean;
|
|
function GetAtEOF: Boolean;
|
|
- function GetCurSource: UTF8String;
|
|
|
|
|
|
+ function GetCurSource: TCSSString;
|
|
Function GetCurLine : Integer;
|
|
Function GetCurLine : Integer;
|
|
Function GetCurPos : Integer;
|
|
Function GetCurPos : Integer;
|
|
protected
|
|
protected
|
|
- Procedure DoError(Msg : UTF8String);
|
|
|
|
- Procedure DoError(Fmt : UTF8String; Args : Array of const);
|
|
|
|
|
|
+ Procedure DoError(Msg : TCSSString);
|
|
|
|
+ Procedure DoError(Fmt : TCSSString; Args : Array of const);
|
|
Procedure Consume(aToken : TCSSToken);
|
|
Procedure Consume(aToken : TCSSToken);
|
|
function ParseComponentValueList(allowRules: Boolean=True): TCSSElement;
|
|
function ParseComponentValueList(allowRules: Boolean=True): TCSSElement;
|
|
function ParseComponentValue: TCSSElement;
|
|
function ParseComponentValue: TCSSElement;
|
|
@@ -56,7 +56,7 @@ Type
|
|
function ParseRuleList(aStopOn : TCSStoken = ctkEOF): TCSSElement;
|
|
function ParseRuleList(aStopOn : TCSStoken = ctkEOF): TCSSElement;
|
|
function ParseSelector: TCSSElement;
|
|
function ParseSelector: TCSSElement;
|
|
function ParseDeclaration(aIsAt : Boolean = false): TCSSDeclarationElement;
|
|
function ParseDeclaration(aIsAt : Boolean = false): TCSSDeclarationElement;
|
|
- function ParseCall(aName: UTF8String): TCSSElement;
|
|
|
|
|
|
+ function ParseCall(aName: TCSSString): TCSSElement;
|
|
function ParseUnary: TCSSElement;
|
|
function ParseUnary: TCSSElement;
|
|
function ParseUnit: TCSSUnits;
|
|
function ParseUnit: TCSSUnits;
|
|
function ParseIdentifier : TCSSElement;
|
|
function ParseIdentifier : TCSSElement;
|
|
@@ -69,7 +69,7 @@ Type
|
|
Function ParseUnicodeRange : TCSSElement;
|
|
Function ParseUnicodeRange : TCSSElement;
|
|
function ParseArray(aPrefix: TCSSElement): TCSSElement;
|
|
function ParseArray(aPrefix: TCSSElement): TCSSElement;
|
|
function ParseURL: TCSSElement;
|
|
function ParseURL: TCSSElement;
|
|
- Property CurrentSource : UTF8String Read GetCurSource;
|
|
|
|
|
|
+ Property CurrentSource : TCSSString Read GetCurSource;
|
|
Property CurrentLine : Integer Read GetCurLine;
|
|
Property CurrentLine : Integer Read GetCurLine;
|
|
Property CurrentPos : Integer Read GetCurPos;
|
|
Property CurrentPos : Integer Read GetCurPos;
|
|
Public
|
|
Public
|
|
@@ -78,7 +78,7 @@ Type
|
|
Destructor Destroy; override;
|
|
Destructor Destroy; override;
|
|
Function Parse : TCSSElement;
|
|
Function Parse : TCSSElement;
|
|
Property CurrentToken : TCSSToken Read FCurrent;
|
|
Property CurrentToken : TCSSToken Read FCurrent;
|
|
- Property CurrentTokenString : UTF8String Read FCurrentTokenString;
|
|
|
|
|
|
+ Property CurrentTokenString : TCSSString Read FCurrentTokenString;
|
|
Function GetNextToken : TCSSToken;
|
|
Function GetNextToken : TCSSToken;
|
|
Function PeekNextToken : TCSSToken;
|
|
Function PeekNextToken : TCSSToken;
|
|
Property Scanner : TCSSScanner Read FScanner;
|
|
Property Scanner : TCSSScanner Read FScanner;
|
|
@@ -95,7 +95,7 @@ Resourcestring
|
|
SUnaryInvalidToken = 'Invalid token for unary operation: %s';
|
|
SUnaryInvalidToken = 'Invalid token for unary operation: %s';
|
|
SErrFileSource = 'Error: file "%s" line %d, pos %d: ';
|
|
SErrFileSource = 'Error: file "%s" line %d, pos %d: ';
|
|
SErrSource = 'Error: line %d, pos %d: ';
|
|
SErrSource = 'Error: line %d, pos %d: ';
|
|
- SErrUnexpectedToken = 'Unexpected token: Got %s (as UTF8String: "%s"), expected: %s ';
|
|
|
|
|
|
+ SErrUnexpectedToken = 'Unexpected token: Got %s (as TCSSString: "%s"), expected: %s ';
|
|
SErrInvalidFloat = 'Invalid float: %s';
|
|
SErrInvalidFloat = 'Invalid float: %s';
|
|
SErrUnexpectedEndOfFile = 'Unexpected EOF while scanning function args: %s';
|
|
SErrUnexpectedEndOfFile = 'Unexpected EOF while scanning function args: %s';
|
|
|
|
|
|
@@ -141,9 +141,9 @@ begin
|
|
Result:=(CurrentToken=ctkEOF);
|
|
Result:=(CurrentToken=ctkEOF);
|
|
end;
|
|
end;
|
|
|
|
|
|
-procedure TCSSParser.DoError(Msg: UTF8String);
|
|
|
|
|
|
+procedure TCSSParser.DoError(Msg: TCSSString);
|
|
Var
|
|
Var
|
|
- ErrAt : UTF8String;
|
|
|
|
|
|
+ ErrAt : TCSSString;
|
|
|
|
|
|
begin
|
|
begin
|
|
If Assigned(FScanner) then
|
|
If Assigned(FScanner) then
|
|
@@ -154,7 +154,7 @@ begin
|
|
Raise ECSSParser.Create(ErrAt+Msg)
|
|
Raise ECSSParser.Create(ErrAt+Msg)
|
|
end;
|
|
end;
|
|
|
|
|
|
-procedure TCSSParser.DoError(Fmt: UTF8String; Args: array of const);
|
|
|
|
|
|
+procedure TCSSParser.DoError(Fmt: TCSSString; Args: array of const);
|
|
begin
|
|
begin
|
|
DoError(Format(Fmt,Args));
|
|
DoError(Format(Fmt,Args));
|
|
end;
|
|
end;
|
|
@@ -171,7 +171,7 @@ begin
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
|
|
-function TCSSParser.GetCurSource: UTF8String;
|
|
|
|
|
|
+function TCSSParser.GetCurSource: TCSSString;
|
|
begin
|
|
begin
|
|
If Assigned(FScanner) then
|
|
If Assigned(FScanner) then
|
|
Result:=FScanner.CurFileName
|
|
Result:=FScanner.CurFileName
|
|
@@ -240,7 +240,7 @@ Var
|
|
aLast : TCSSToken;
|
|
aLast : TCSSToken;
|
|
aList : TCSSListElement;
|
|
aList : TCSSListElement;
|
|
{$ifdef VerboseCSSParser}
|
|
{$ifdef VerboseCSSParser}
|
|
- aAt : String;
|
|
|
|
|
|
+ aAt : TCSSString;
|
|
{$endif}
|
|
{$endif}
|
|
|
|
|
|
begin
|
|
begin
|
|
@@ -287,7 +287,7 @@ end;
|
|
|
|
|
|
function TCSSParser.ParseExpression: TCSSElement;
|
|
function TCSSParser.ParseExpression: TCSSElement;
|
|
|
|
|
|
- Function AllowRules(aName : String) : Boolean;
|
|
|
|
|
|
+ Function AllowRules(const aName : TCSSString) : Boolean;
|
|
|
|
|
|
begin
|
|
begin
|
|
result:=sameText(aName,'@media') or sameText(aName,'@print');
|
|
result:=sameText(aName,'@media') or sameText(aName,'@print');
|
|
@@ -379,7 +379,7 @@ begin
|
|
FPeekToken:=FScanner.FetchToken;
|
|
FPeekToken:=FScanner.FetchToken;
|
|
FPeekTokenString:=FScanner.CurTokenString;
|
|
FPeekTokenString:=FScanner.CurTokenString;
|
|
end;
|
|
end;
|
|
- {$ifdef VerboseCSSParser}Writeln('PeekNextToken : ',GetEnumName(TypeInfo(TCSSToken),Ord(FPeekToken)), ' As UTF8String: ',FPeekTokenString);{$endif VerboseCSSParser}
|
|
|
|
|
|
+ {$ifdef VerboseCSSParser}Writeln('PeekNextToken : ',GetEnumName(TypeInfo(TCSSToken),Ord(FPeekToken)), ' As TCSSString: ',FPeekTokenString);{$endif VerboseCSSParser}
|
|
Result:=FPeekToken;
|
|
Result:=FPeekToken;
|
|
end;
|
|
end;
|
|
|
|
|
|
@@ -416,7 +416,7 @@ end;
|
|
function TCSSParser.ParseIdentifier: TCSSElement;
|
|
function TCSSParser.ParseIdentifier: TCSSElement;
|
|
|
|
|
|
Var
|
|
Var
|
|
- aValue : UTF8String;
|
|
|
|
|
|
+ aValue : TCSSString;
|
|
aId : TCSSIdentifierElement;
|
|
aId : TCSSIdentifierElement;
|
|
|
|
|
|
begin
|
|
begin
|
|
@@ -518,7 +518,7 @@ function TCSSParser.ParsePseudo: TCSSElement;
|
|
|
|
|
|
Var
|
|
Var
|
|
aPseudo : TCSSPseudoClassElement;
|
|
aPseudo : TCSSPseudoClassElement;
|
|
- aValue : string;
|
|
|
|
|
|
+ aValue : TCSSString;
|
|
|
|
|
|
begin
|
|
begin
|
|
aValue:=CurrentTokenString;
|
|
aValue:=CurrentTokenString;
|
|
@@ -570,7 +570,7 @@ Var
|
|
aLast : TCSSToken;
|
|
aLast : TCSSToken;
|
|
aList: TCSSListElement;
|
|
aList: TCSSListElement;
|
|
{$IFDEF VerboseCSSParser}
|
|
{$IFDEF VerboseCSSParser}
|
|
- aAt : String;
|
|
|
|
|
|
+ aAt : TCSSString;
|
|
{$ENDIF}
|
|
{$ENDIF}
|
|
|
|
|
|
begin
|
|
begin
|
|
@@ -831,7 +831,7 @@ begin
|
|
end;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
|
|
-function TCSSParser.ParseCall(aName : UTF8String): TCSSElement;
|
|
|
|
|
|
+function TCSSParser.ParseCall(aName : TCSSString): TCSSElement;
|
|
|
|
|
|
var
|
|
var
|
|
aCall : TCSSCallElement;
|
|
aCall : TCSSCallElement;
|
|
@@ -870,7 +870,7 @@ end;
|
|
function TCSSParser.ParseString: TCSSElement;
|
|
function TCSSParser.ParseString: TCSSElement;
|
|
|
|
|
|
Var
|
|
Var
|
|
- aValue : UTF8String;
|
|
|
|
|
|
+ aValue : TCSSString;
|
|
aEl : TCSSElement;
|
|
aEl : TCSSElement;
|
|
aStr : TCSSStringElement;
|
|
aStr : TCSSStringElement;
|
|
|
|
|
|
@@ -897,7 +897,7 @@ end;
|
|
|
|
|
|
function TCSSParser.ParseUnicodeRange: TCSSElement;
|
|
function TCSSParser.ParseUnicodeRange: TCSSElement;
|
|
Var
|
|
Var
|
|
- aValue : String;
|
|
|
|
|
|
+ aValue : TCSSString;
|
|
aRange : TCSSUnicodeRangeElement;
|
|
aRange : TCSSUnicodeRangeElement;
|
|
|
|
|
|
begin
|
|
begin
|