[Ur] debugging xml data
    Gergely Buday 
    gbuday at gmail.com
       
    Thu Jan  5 10:15:57 EST 2012
    
    
  
Hi,
I do not know whether there is already written routines for this task,
but I have written some util functions to help debugging xml values.
It strips html tags and newlines from already constructed xml data.
Adam, what do you think of this? Is it valuable to include in the distribution?
- Gergely
$ cat debugUtil.ur
fun deleteHtml s =
    let
        val chars = String.length s - 1
        fun delete i acc =
            if (i > chars)
               then acc
               else
                    let
                        val nextChar = String.sub s i
                     in
                        if nextChar = #"<"
                           then inTag (i+1) acc
                           else delete (i+1) (acc ^ String.str nextChar)
                    end
        and inTag i acc =
            if (i > chars)
               then acc
               else
                    let
                        val nextChar = String.sub s i
                     in
                        if nextChar = #">"
                           then delete (i+1) acc
                           else inTag (i+1) acc
                    end
     in
        delete 0 ""
    end
fun deleteChar ch s =
    let
        val chars = String.length s - 1
        fun delete i acc =
            if (i > chars)
               then acc
               else
                    let
                        val nextChar = String.sub s i
                     in
                        if nextChar = ch
                           then delete (i+1) acc
                           else delete (i+1) (acc ^ String.str nextChar)
                    end
     in
        delete 0 ""
    end
fun xmlToString [ ctx ::: {Unit} ] [ use ::: {Type} ] [ bnd ::: {Type}
] ( arg : xml ctx use bnd ) : string =
    deleteChar #"\n" (deleteHtml (show arg))
    
    
More information about the Ur
mailing list