error 67: Too many expressions, found 'iif' in 'return type<v3>( iif(a.x>b,a.x,b), iif(a.y>b,a.y,b), iif(a.z>b,a.z,b) )'
Joshy
Code: Select all
function max overload(byref a as const v2,byref b as const real) as v2
return type<v2>( iif(a.x>b,a.x,b),iif(a.y>b,a.y,b) )
end function
function max overload(byref a as const v3,byref b as const real) as v3
return type<v3>( iif(a.x>b,a.x,b), iif(a.y>b,a.y,b), iif(a.z>b,a.z,b) )
end function
Code: Select all
type real as single ' or double
type v2
as real x,y
end type
type v3 extends v2
as real z
end type
function dot overload(byref v as const v2) as real
return v.x*v.x + v.y*v.y
end function
function dot(byref a as const v2,byref b as const v2) as real
return a.x*b.x + a.y*b.y
end function
function dot(byref v as const v3) as real
return v.x*v.x + v.y*v.y + v.z*v.z
end function
function dot(byref a as const v3,byref b as const v3) as real
return a.x*b.x + a.y*b.y + a.z*b.z
end function
function ndot(byref a as const v2,byref b as const v2) as real
return a.x*b.x - a.y*b.y
end function
function length overload(byref v as const v2) as real
return sqr(dot(v))
end function
function length(byref v as const v3) as real
return sqr(dot(v))
end function
function max overload(byref a as const real,byref b as const real) as real
return iif(a>b,a,b)
end function
function max overload(byref a as const v2,byref b as const real) as v2
return type<v2>( iif(a.x>b,a.x,b),iif(a.y>b,a.y,b) )
end function
function max overload(byref a as const v3,byref b as const real) as v3
return type<v3>( iif(a.x>b,a.x,b), iif(a.y>b,a.y,b), iif(a.z>b,a.z,b) )
end function