wist icon indicating copy to clipboard operation
wist copied to clipboard

Add rule: no boolean type coersion

Open cdthompson opened this issue 6 years ago • 1 comments

boolean type coersion is inconsistent. A rule to detect this would be helpful.

Motivation:

Brightscript Debugger> a = invalid

Brightscript Debugger> if a: print "hi": end if
Type Mismatch. (runtime error &h18) in $LIVECOMPILE(8)

Brightscript Debugger> a = "true"

Brightscript Debugger> if a: print "hi": end if
Type Mismatch. (runtime error &h18) in $LIVECOMPILE(10)

Brightscript Debugger> a = true

Brightscript Debugger> if a: print "hi": end if
hi

Brightscript Debugger> a = 1

Brightscript Debugger> if a: print "hi": end if
hi

Improved style allows for invalid without crashes (though string vs. boolean still crashes)

Brightscript Debugger> a = invalid

Brightscript Debugger> if a = true: print "hi": end if

Brightscript Debugger> a = "true"

Brightscript Debugger> if a = true: print "hi": end if
Type Mismatch. (runtime error &h18) in $LIVECOMPILE(18)

Brightscript Debugger> a = 1

Brightscript Debugger> if a = true: print "hi": end if
hi

cdthompson avatar Jun 13 '18 15:06 cdthompson