[libxml2]Add libxml2 library

This commit is contained in:
zhoujiale
2026-07-26 16:57:28 +08:00
committed by zhoujiale
parent 0a44ec8a06
commit e841ac915d
3790 changed files with 668244 additions and 0 deletions
+68
View File
@@ -0,0 +1,68 @@
========================
Expression: 1
Object is a number : 1
========================
Expression: 1+2
Object is a number : 3
========================
Expression: 2*3
Object is a number : 6
========================
Expression: 1+2*3+4
Object is a number : 11
========================
Expression: (1+2)*(3+4)
Object is a number : 21
========================
Expression: 1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1+1*1
Object is a number : 21
========================
Expression: 0.000000000000000000000000000000000000000000000000001
Object is a number : 1e-51
========================
Expression: -0.000000000000000000000000000000000000000000000000001
Object is a number : -1e-51
========================
Expression: 1e2147483648
Object is a number : Infinity
========================
Expression: 1e4294967296
Object is a number : Infinity
========================
Expression: 1e9223372036854775808
Object is a number : Infinity
========================
Expression: 1e18446744073709551616
Object is a number : Infinity
========================
Expression: 1e-2147483649
Object is a number : 0
========================
Expression: 1e-4294967296
Object is a number : 0
========================
Expression: 1e-9223372036854775809
Object is a number : 0
========================
Expression: 1e-18446744073709551616
Object is a number : 0
========================
Expression: self::-name
Object is empty (NULL)
+184
View File
@@ -0,0 +1,184 @@
========================
Expression: 0<0
Object is a Boolean : false
========================
Expression: 0<=0
Object is a Boolean : true
========================
Expression: 0>0
Object is a Boolean : false
========================
Expression: 0>=0
Object is a Boolean : true
========================
Expression: 0<1
Object is a Boolean : true
========================
Expression: 0<=1
Object is a Boolean : true
========================
Expression: 0>1
Object is a Boolean : false
========================
Expression: 0>=1
Object is a Boolean : false
========================
Expression: 1<0
Object is a Boolean : false
========================
Expression: 1<=0
Object is a Boolean : false
========================
Expression: 1>0
Object is a Boolean : true
========================
Expression: 1>=0
Object is a Boolean : true
========================
Expression: 1<1
Object is a Boolean : false
========================
Expression: 1<=1
Object is a Boolean : true
========================
Expression: 1>1
Object is a Boolean : false
========================
Expression: 1>=1
Object is a Boolean : true
========================
Expression: '0'<1
Object is a Boolean : true
========================
Expression: '0'<=1
Object is a Boolean : true
========================
Expression: '0'>1
Object is a Boolean : false
========================
Expression: '0'>=1
Object is a Boolean : false
========================
Expression: 0<'1.2'
Object is a Boolean : true
========================
Expression: 0<='1.2'
Object is a Boolean : true
========================
Expression: 0>'1.2'
Object is a Boolean : false
========================
Expression: 0>='1.2'
Object is a Boolean : false
========================
Expression: 0<'-0.2'
Object is a Boolean : false
========================
Expression: 0<='-0.2'
Object is a Boolean : false
========================
Expression: 0>'-0.2'
Object is a Boolean : true
========================
Expression: 0>='-0.2'
Object is a Boolean : true
========================
Expression: false()<1
Object is a Boolean : true
========================
Expression: false()<=1
Object is a Boolean : true
========================
Expression: 0>true()
Object is a Boolean : false
========================
Expression: 0>=true()
Object is a Boolean : false
========================
Expression: 'a' > 'a'
Object is a Boolean : false
========================
Expression: 'a' > 'b'
Object is a Boolean : false
========================
Expression: 'b' > 'a'
Object is a Boolean : false
========================
Expression: 'a' < 'a'
Object is a Boolean : false
========================
Expression: 'a' < 'b'
Object is a Boolean : false
========================
Expression: 'b' < 'a'
Object is a Boolean : false
========================
Expression: 'a' >= 'a'
Object is a Boolean : false
========================
Expression: 'a' >= 'b'
Object is a Boolean : false
========================
Expression: 'b' >= 'a'
Object is a Boolean : false
========================
Expression: 'a' <= 'a'
Object is a Boolean : false
========================
Expression: 'a' <= 'b'
Object is a Boolean : false
========================
Expression: 'b' <= 'a'
Object is a Boolean : false
========================
Expression: 'a' > '0.0'
Object is a Boolean : false
========================
Expression: 'a' < '0.0'
Object is a Boolean : false
+104
View File
@@ -0,0 +1,104 @@
========================
Expression: 1=1
Object is a Boolean : true
========================
Expression: 1!=1
Object is a Boolean : false
========================
Expression: 1=0
Object is a Boolean : false
========================
Expression: 1!=0
Object is a Boolean : true
========================
Expression: true()=true()
Object is a Boolean : true
========================
Expression: true()!=true()
Object is a Boolean : false
========================
Expression: true()=false()
Object is a Boolean : false
========================
Expression: false()!=true()
Object is a Boolean : true
========================
Expression: 'test'='test'
Object is a Boolean : true
========================
Expression: 'test'!='test'
Object is a Boolean : false
========================
Expression: 'test2'='test'
Object is a Boolean : false
========================
Expression: 'test2'!='test'
Object is a Boolean : true
========================
Expression: false()=0
Object is a Boolean : true
========================
Expression: false()!=0
Object is a Boolean : false
========================
Expression: false()=1
Object is a Boolean : false
========================
Expression: false()!=1
Object is a Boolean : true
========================
Expression: 0=true()
Object is a Boolean : false
========================
Expression: 0!=true()
Object is a Boolean : true
========================
Expression: 1=true()
Object is a Boolean : true
========================
Expression: 1!=true()
Object is a Boolean : false
========================
Expression: true()='test'
Object is a Boolean : true
========================
Expression: false()='test'
Object is a Boolean : false
========================
Expression: 'test'!=true()
Object is a Boolean : false
========================
Expression: 'test'!=false()
Object is a Boolean : true
========================
Expression: 'a'=0.0
Object is a Boolean : false
========================
Expression: 'a'!=0.0
Object is a Boolean : true
+252
View File
@@ -0,0 +1,252 @@
========================
Expression: 1
Object is a number : 1
========================
Expression: 123
Object is a number : 123
========================
Expression: 1.23
Object is a number : 1.23
========================
Expression: 0.123
Object is a number : 0.123
========================
Expression: 4.
Object is a number : 4
========================
Expression: .4
Object is a number : 0.4
========================
Expression: 1.23e3
Object is a number : 1230
========================
Expression: 1.23e-3
Object is a number : 0.00123
========================
Expression: 1 div 0
Object is a number : Infinity
========================
Expression: -1 div 0
Object is a number : -Infinity
========================
Expression: 0 div 0
Object is a number : NaN
========================
Expression: 1 div -0
Object is a number : -Infinity
========================
Expression: (1 div 0) > 0
Object is a Boolean : true
========================
Expression: (1 div 0) < 0
Object is a Boolean : false
========================
Expression: (-1 div 0) > 0
Object is a Boolean : false
========================
Expression: (-1 div 0) < 0
Object is a Boolean : true
========================
Expression: (0 div 0) > 0
Object is a Boolean : false
========================
Expression: (0 div 0) < 0
Object is a Boolean : false
========================
Expression: (1 div -0) > 0
Object is a Boolean : false
========================
Expression: (1 div -0) < 0
Object is a Boolean : true
========================
Expression: 0 div 0 = 0 div 0
Object is a Boolean : false
========================
Expression: 0 div 0 != 0 div 0
Object is a Boolean : true
========================
Expression: 0 div 0 > 0 div 0
Object is a Boolean : false
========================
Expression: 0 div 0 < 0 div 0
Object is a Boolean : false
========================
Expression: 0 div 0 >= 0 div 0
Object is a Boolean : false
========================
Expression: 0 div 0 <= 0 div 0
Object is a Boolean : false
========================
Expression: 1 div 0 = -1 div 0
Object is a Boolean : false
========================
Expression: 1 div 0 != -1 div 0
Object is a Boolean : true
========================
Expression: 1 div 0 > -1 div 0
Object is a Boolean : true
========================
Expression: 1 div 0 < -1 div 0
Object is a Boolean : false
========================
Expression: 1 div 0 >= -1 div 0
Object is a Boolean : true
========================
Expression: 1 div 0 <= -1 div 0
Object is a Boolean : false
========================
Expression: 1 div 0 = 1 div 0
Object is a Boolean : true
========================
Expression: 1 div 0 != 1 div 0
Object is a Boolean : false
========================
Expression: 1 div 0 > 1 div 0
Object is a Boolean : false
========================
Expression: 1 div 0 < 1 div 0
Object is a Boolean : false
========================
Expression: 1 div 0 >= -1 div 0
Object is a Boolean : true
========================
Expression: 1 div 0 <= -1 div 0
Object is a Boolean : false
========================
Expression: -2 div 0 = -1 div 0
Object is a Boolean : true
========================
Expression: 1 div floor(0.1)
Object is a number : Infinity
========================
Expression: 1 div floor(-0.1)
Object is a number : -1
========================
Expression: 1 div floor(-0)
Object is a number : -Infinity
========================
Expression: 1 div floor(0)
Object is a number : Infinity
========================
Expression: 1 div ceiling(0.1)
Object is a number : 1
========================
Expression: 1 div ceiling(-0.1)
Object is a number : -Infinity
========================
Expression: 1 div ceiling(-0)
Object is a number : -Infinity
========================
Expression: 1 div ceiling(0)
Object is a number : Infinity
========================
Expression: 1 div round(0.1)
Object is a number : Infinity
========================
Expression: 1 div round(-0.1)
Object is a number : -Infinity
========================
Expression: 1 div round(-0)
Object is a number : -Infinity
========================
Expression: 1 div round(0)
Object is a number : Infinity
========================
Expression: 1 div number('f')
Object is a number : NaN
========================
Expression: number('f') div 1
Object is a number : NaN
========================
Expression: 1 div (1 div 0)
Object is a number : 0
========================
Expression: (1 div 0) div 1
Object is a number : Infinity
========================
Expression: -(1 div 0) div 1
Object is a number : -Infinity
========================
Expression: 5 mod 2
Object is a number : 1
========================
Expression: 5 mod -2
Object is a number : 1
========================
Expression: -5 mod 2
Object is a number : -1
========================
Expression: -5 mod -2
Object is a number : -1
========================
Expression: 8 mod 3 = 2
Object is a Boolean : true
========================
Expression: 12345678901234567890
Object is a number : 1.23457e+19
========================
Expression: -12345678901234567890
Object is a number : -1.23457e+19
+172
View File
@@ -0,0 +1,172 @@
========================
Expression: true()
Object is a Boolean : true
========================
Expression: false()
Object is a Boolean : false
========================
Expression: number("1.5")
Object is a number : 1.5
========================
Expression: number('abc')
Object is a number : NaN
========================
Expression: -number('abc')
Object is a number : NaN
========================
Expression: number('-')
Object is a number : NaN
========================
Expression: floor(0.1)
Object is a number : 0
========================
Expression: floor(-0.1)
Object is a number : -1
========================
Expression: floor(-0)
Object is a number : 0
========================
Expression: floor(0)
Object is a number : 0
========================
Expression: floor(5.2)
Object is a number : 5
========================
Expression: floor(-5.2)
Object is a number : -6
========================
Expression: floor(100000000000000000000)
Object is a number : 1e+20
========================
Expression: floor(-100000000000000000000)
Object is a number : -1e+20
========================
Expression: floor(0 div 0)
Object is a number : NaN
========================
Expression: floor(1 div 0)
Object is a number : Infinity
========================
Expression: floor(-1 div 0)
Object is a number : -Infinity
========================
Expression: ceiling(0.1)
Object is a number : 1
========================
Expression: ceiling(-0.1)
Object is a number : 0
========================
Expression: ceiling(-0)
Object is a number : 0
========================
Expression: ceiling(0)
Object is a number : 0
========================
Expression: ceiling(5.2)
Object is a number : 6
========================
Expression: ceiling(-5.2)
Object is a number : -5
========================
Expression: ceiling(100000000000000000000)
Object is a number : 1e+20
========================
Expression: ceiling(-100000000000000000000)
Object is a number : -1e+20
========================
Expression: ceiling(0 div 0)
Object is a number : NaN
========================
Expression: ceiling(1 div 0)
Object is a number : Infinity
========================
Expression: ceiling(-1 div 0)
Object is a number : -Infinity
========================
Expression: round(0.1)
Object is a number : 0
========================
Expression: round(5.2)
Object is a number : 5
========================
Expression: round(5.5)
Object is a number : 6
========================
Expression: round(5.6)
Object is a number : 6
========================
Expression: round(-0.1)
Object is a number : 0
========================
Expression: round(-5.2)
Object is a number : -5
========================
Expression: round(-5.5)
Object is a number : -5
========================
Expression: round(-5.6)
Object is a number : -6
========================
Expression: round(0.5)
Object is a number : 1
========================
Expression: round(-0.5)
Object is a number : 0
========================
Expression: round(100000000000000000000)
Object is a number : 1e+20
========================
Expression: round(-100000000000000000000)
Object is a number : -1e+20
========================
Expression: round(0 div 0)
Object is a number : NaN
========================
Expression: round(1 div 0)
Object is a number : Infinity
========================
Expression: round(-1 div 0)
Object is a number : -Infinity
+192
View File
@@ -0,0 +1,192 @@
========================
Expression: string(5)
Object is a string : 5
========================
Expression: string(0.5)
Object is a string : 0.5
========================
Expression: string(-0.5)
Object is a string : -0.5
========================
Expression: string(true())
Object is a string : true
========================
Expression: string(false())
Object is a string : false
========================
Expression: string(12345678901234567890)
Object is a string : 1.23456789012346e+19
========================
Expression: string(-12345678901234567890)
Object is a string : -1.23456789012346e+19
========================
Expression: concat("titi","toto")
Object is a string : tititoto
========================
Expression: concat("titi","toto","tata")
Object is a string : tititototata
========================
Expression: concat("titi",'toto')
Object is a string : tititoto
========================
Expression: concat("titi",'toto',"tata","last")
Object is a string : tititototatalast
========================
Expression: starts-with("tititoto","titi")
Object is a Boolean : true
========================
Expression: starts-with("tititoto","to")
Object is a Boolean : false
========================
Expression: contains("tititototata","titi")
Object is a Boolean : true
========================
Expression: contains("tititototata","toto")
Object is a Boolean : true
========================
Expression: contains("tititototata","tata")
Object is a Boolean : true
========================
Expression: contains("tititototata","tita")
Object is a Boolean : false
========================
Expression: substring("12345",2,3)
Object is a string : 234
========================
Expression: substring("12345",2)
Object is a string : 2345
========================
Expression: substring("12345",-4)
Object is a string : 12345
========================
Expression: substring("12345",3.4)
Object is a string : 345
========================
Expression: substring("12345",3.6)
Object is a string : 45
========================
Expression: substring("12345",1.5,2.6)
Object is a string : 234
========================
Expression: substring("12345",2.2,2.2)
Object is a string : 23
========================
Expression: substring("12345",0,3)
Object is a string : 12
========================
Expression: substring("12345",-8,10)
Object is a string : 1
========================
Expression: substring("12345",4,-10)
Object is a string :
========================
Expression: substring("12345",0 div 0, 3)
Object is a string :
========================
Expression: substring("12345",1, 0 div 0)
Object is a string :
========================
Expression: substring("12345",1 div 0, 3)
Object is a string :
========================
Expression: substring("12345",3,-1 div 0)
Object is a string :
========================
Expression: substring("12345",-42, 1 div 0)
Object is a string : 12345
========================
Expression: substring("12345",-1 div 0, 1 div 0)
Object is a string :
========================
Expression: substring("12345",-1 div 0,5)
Object is a string :
========================
Expression: substring("12345",-0.7,4)
Object is a string : 12
========================
Expression: substring("12345",-5000000000,5000000004)
Object is a string : 123
========================
Expression: substring-after("12345678","345")
Object is a string : 678
========================
Expression: substring-after("12345678","999")
Object is a string :
========================
Expression: substring-before("12345678","345")
Object is a string : 12
========================
Expression: substring-before("12345678","999")
Object is a string :
========================
Expression: string-length("")
Object is a number : 0
========================
Expression: string-length("titi")
Object is a number : 4
========================
Expression: normalize-space(" abc def ")
Object is a string : abc def
========================
Expression: normalize-space(" abc def")
Object is a string : abc def
========================
Expression: normalize-space("abc def ")
Object is a string : abc def
========================
Expression: normalize-space(" abcdef ")
Object is a string : abcdef
========================
Expression: normalize-space(" abcdef")
Object is a string : abcdef
========================
Expression: normalize-space("abcdef ")
Object is a string : abcdef