Difference between revisions of "FpDebug-Watches-Intrinsic-Functions"

From Lazarus wiki
Jump to navigationJump to search
(Created page with "= About = = Length(String-or-array) = = CC(instance) {ChildClass} =")
 
Line 1: Line 1:
 
= About =
 
= About =
 +
 +
[[LazDebuggerFp]] has some build in helper functions. They can be included in any watch using the pascal function calling syntax. The result is calculated internally be the debugger.
 +
 +
To avoid clashed with identifier names in the debugged target app, such intrinsic functions require a ":" prefix by default. E.g. ":length(s)".
 +
 +
== Settings ==
 +
 +
The prefix can be chosen or switched off. In the property grid of the debugger backend setup the option "IntrinsicPrefix" can be found.
 +
 +
<ul>
 +
<li>
 +
;ipColon: Require a ":" as prefix
 +
</li>
 +
<li>
 +
;ipExclamation: Require a "!" as prefix
 +
</li>
 +
<li>
 +
;ipNoPrefix: Don't require a prefix.<br/> If function calling is enabled for the watch, the intrinsic takes precedence, and may hide a call-able function in the target app. (Use the & to bypass the intrinsic and trigger function eval. E.g.: "&length()")
 +
</li>
 +
</ul>
  
 
= Length(String-or-array) =
 
= Length(String-or-array) =
 +
 +
Returns the length of an array or string.
 +
 +
See [[FpDebug#Strings_(vs_PChar_and_Array_of_Char)]] for info about string types in the debugger.
 +
  
 
= CC(instance) {ChildClass} =
 
= CC(instance) {ChildClass} =

Revision as of 13:02, 9 September 2022

About

LazDebuggerFp has some build in helper functions. They can be included in any watch using the pascal function calling syntax. The result is calculated internally be the debugger.

To avoid clashed with identifier names in the debugged target app, such intrinsic functions require a ":" prefix by default. E.g. ":length(s)".

Settings

The prefix can be chosen or switched off. In the property grid of the debugger backend setup the option "IntrinsicPrefix" can be found.

  • ipColon
    Require a ":" as prefix
  • ipExclamation
    Require a "!" as prefix
  • ipNoPrefix
    Don't require a prefix.
    If function calling is enabled for the watch, the intrinsic takes precedence, and may hide a call-able function in the target app. (Use the & to bypass the intrinsic and trigger function eval. E.g.: "&length()")

Length(String-or-array)

Returns the length of an array or string.

See FpDebug#Strings_(vs_PChar_and_Array_of_Char) for info about string types in the debugger.


CC(instance) {ChildClass}