Code: Select all
'-------------------------------------------------------------
'|BoolLib |
'|By Imortis Inglorian |
'|v0.3 |
'| |
'|07-19-07 |
'|-First Draft Completed |
'-------------------------------------------------------------
Enum Bool
FALSE
TRUE = Not(FALSE)
End Enum
Type Boolean
TorF As Bool
Declare Operator Let (ByRef rhs As Bool)
Declare Operator Let (ByRef rhs As Boolean)
Declare Operator Cast () As String
End Type
Operator Boolean.Cast() As String
If this.TorF = TRUE Then Return "True"
If this.TorF = FALSE Then Return "False"
End Operator
Operator Boolean.Let(ByRef rhs As Bool)
If rhs = TRUE Then
this.TorF = TRUE
Else
this.TorF = FALSE
End if
End Operator
Operator Boolean.Let(ByRef rhs As Boolean)
this.TorF = rhs.TorF
End Operator
Operator = (ByRef lhs As Boolean, ByRef rhs As Boolean) As Byte
Dim Ret As Byte
If lhs.TorF = rhs.TorF Then
Ret = -1
Else
Ret = 0
End if
Return Ret
End Operator
Operator = (ByRef lhs As Boolean, ByRef rhs As Bool) As Byte
Dim Ret As Byte
If lhs.TorF = rhs Then
Ret = -1
Else
Ret = 0
End If
Return Ret
End Operator
Operator = (ByRef lhs As Bool, Byref rhs As Boolean) As Byte
Dim Ret As Byte
If lhs = rhs.TorF Then
Ret = -1
Else
Ret = 0
End If
Return Ret
End Operator
Operator Or (ByRef lhs As Boolean, ByRef rhs As Boolean) As Boolean
Dim Ret As Boolean
If (lhs.TorF = TRUE) Then
Ret.TorF = TRUE
elseIf (rhs.TorF = TRUE) Then
Ret.TorF = TRUE
Else
Ret.TorF = FALSE
End if
Return Ret
End Operator
Operator Or (ByRef lhs As Boolean, ByRef rhs As Bool) As Boolean
Dim Ret As Boolean
If (lhs.TorF = TRUE) Then
Ret.TorF = TRUE
elseIf (rhs = TRUE) Then
Ret.TorF = TRUE
Else
Ret.TorF = FALSE
End if
Return Ret
End Operator
Operator Or (ByRef lhs As Bool, ByRef rhs As Bool) As Boolean
Dim Ret As Boolean
If (lhs = TRUE) Then
Ret.TorF = TRUE
elseIf (rhs = TRUE) Then
Ret.TorF = TRUE
Else
Ret.TorF = FALSE
End if
Return Ret
End Operator
Operator Or (ByRef lhs As Bool, ByRef rhs As Boolean) As Boolean
Dim Ret As Boolean
If (lhs = TRUE) Then
Ret.TorF = TRUE
elseIf (rhs.TorF = TRUE) Then
Ret.TorF = TRUE
Else
Ret.TorF = FALSE
End if
Return Ret
End Operator
Operator And (ByRef lhs As Boolean, ByRef rhs As Boolean) As Boolean
Dim Ret As Boolean
If (lhs.TorF = TRUE) Then
If (rhs.TorF = TRUE) Then
Ret.TorF = TRUE
Else
Ret.TorF = FALSE
EndIf
Else
Ret.TorF = FALSE
EndIf
Return Ret
End Operator
Operator And (ByRef lhs As Boolean, ByRef rhs As Bool) As Boolean
Dim Ret As Boolean
If (lhs.TorF = TRUE) Then
If (rhs = TRUE) Then
Ret.TorF = TRUE
Else
Ret.TorF = FALSE
EndIf
Else
Ret.TorF = FALSE
EndIf
Return Ret
End Operator
Operator And (ByRef lhs As Bool, ByRef rhs As Boolean) As Boolean
Dim Ret As Boolean
If (lhs = TRUE) Then
If (rhs.TorF = TRUE) Then
Ret.TorF = TRUE
Else
Ret.TorF = FALSE
EndIf
Else
Ret.TorF = FALSE
EndIf
Return Ret
End Operator
Operator And (ByRef lhs As Bool, ByRef rhs As Bool) As Boolean
Dim Ret As Boolean
If (lhs = TRUE) Then
If (rhs = TRUE) Then
Ret.TorF = TRUE
Else
Ret.TorF = FALSE
EndIf
Else
Ret.TorF = FALSE
EndIf
Return Ret
End Operator
Operator Not(ByRef rhs As Boolean) As Boolean
Dim Ret As Boolean
If rhs.TorF = TRUE Then
Ret.TorF = FALSE
Else
Ret.TorF = TRUE
EndIf
Return Ret
End Operator
Operator Not(ByRef rhs As Bool) As Boolean
Dim Ret As Boolean
If rhs = TRUE Then
Ret.TorF = FALSE
Else
Ret.TorF = TRUE
EndIf
Return Ret
End Operator
Code: Select all
#Include "BoolLib.bas"
Dim Test1 As Boolean
Dim Test2 As Boolean
Print "Test1 = TRUE"
Test1 = TRUE
Print "Test2 = FALSE"
Test2 = FALSE
Print
Print "Test1 Or Test2 = ", Test1 Or Test2
Print "Test1 And Test2 = ", Test1 And Test2
Print
Print "Not(Test1 Or Test2) = ", Not(Test1 Or Test2)
Print "Not(Test1 And Test2) = ", Not(Test1 And Test2)
Print
Print "Test1 And TRUE = ", Test1 And TRUE
Print "TRUE And Test1 = ", TRUE And Test1
Print
Print "Test2 Or FALSE = ", Test2 Or FALSE
Print "FALSE Or Test2 = ", FALSE Or Test2
Print
Print "FALSE Or FALSE = ", FALSE Or FALSE
Print "TRUE And TRUE = ", TRUE And TRUE
Print
Print "Test1 = Test2?",
If (Test1 = Test2) Then
Print "Yes!"
Else
Print "No!"
End If
Print "Test1 = TRUE? ",
If (Test1 = TRUE) Then
Print "Yes!"
Else
Print "No!"
EndIf
Print "TRUE = TRUE? ",
If (TRUE = TRUE) Then
Print "Yes!"
Else
Print "No!"
EndIf
sleep