[mod] css
This commit is contained in:
parent
24c1ae3c5a
commit
53d78573b1
4 changed files with 61 additions and 27 deletions
|
|
@ -17,7 +17,12 @@ function lsp-ws:error($error) {
|
|||
declare
|
||||
%ws:connect('/lsp')
|
||||
function lsp-ws:connect() as empty-sequence() {
|
||||
let $id:=(ws:id(),rpc:admin-log("CONNECT","🌹"))
|
||||
let $id:=(ws:id(),
|
||||
rpc:admin-log("CoNNECT","🌹"),
|
||||
rpc:admin-log(request:header-map(),"🌹")
|
||||
)
|
||||
let $props:=("host","http-version","is-secure","origin","protocol-version","query-string","request-uri","sub-protocols")
|
||||
|
||||
return (
|
||||
ws:set($id, "id", $id),
|
||||
ws:set($id, "connectTime", current-dateTime()),
|
||||
|
|
|
|||
|
|
@ -16,14 +16,15 @@ import module namespace pos="lsp/position" at "../position.xqm";
|
|||
declare type lsp-diags:ParseResult as element(Module|ERROR);
|
||||
|
||||
declare variable $lsp-diags:actions as hnd:actionMap :={
|
||||
"Module": lsp-diags:Module#2
|
||||
"Module": lsp-diags:Module#2,
|
||||
"ModuleDecl": lsp-diags:ModuleDecl#2
|
||||
};
|
||||
|
||||
declare function lsp-diags:list(
|
||||
$uri as xs:string,
|
||||
$text as xs:string,
|
||||
$xml as lsp-diags:ParseResult)
|
||||
as map(*)*{
|
||||
as lspt:Diagnostic*{
|
||||
if($xml/self::ERROR)
|
||||
then lsp-diags:parse-error($text, $xml)
|
||||
else lsp-diags:parse-xquery($text,$xml)
|
||||
|
|
@ -63,9 +64,9 @@ as lspt:Diagnostic*
|
|||
)
|
||||
};
|
||||
|
||||
(: test data :)
|
||||
(: walk in tree :)
|
||||
declare function lsp-diags:parse-xquery($text as xs:string, $parse as element(Module))
|
||||
as map(*)*{
|
||||
as lspt:Diagnostic*{
|
||||
let $state:= hnd:State((),false(),{"text":$text})
|
||||
let $state:= hnd:walk($parse,$lsp-diags:actions,$state)
|
||||
return $state?result
|
||||
|
|
@ -73,7 +74,7 @@ as map(*)*{
|
|||
|
||||
declare function lsp-diags:Module($parse as element(Module),$state as hnd:State )
|
||||
as hnd:State{
|
||||
let $new:=if(exists($parse/VersionDecl)=>trace("has ver: "))
|
||||
let $new:=if(exists($parse/VersionDecl))
|
||||
then ()
|
||||
else let $text:=$state?extras?text
|
||||
|
||||
|
|
@ -91,4 +92,15 @@ as hnd:State{
|
|||
|
||||
,message(name($parse),"Module: ")
|
||||
)
|
||||
};
|
||||
|
||||
|
||||
declare function lsp-diags:ModuleDecl($parse as element(ModuleDecl),$state as hnd:State )
|
||||
as hnd:State{
|
||||
(: ModuleDecl ::= 'module' 'namespace' NCName '=' URILiteral ';':)
|
||||
let $mod:=$parse/NCName/string()=>trace("pre")
|
||||
let $extras:=$state?extras=>map:put("mod",$mod)
|
||||
return $state
|
||||
=>map:put("extras",$extras)
|
||||
=>map:put("skipchildren",true())
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue