This only applies to dot notation you write directly in the method. If you
reference properties with brackets [], you can use any property name string you
like.
One feature that I think is missing is that you can't access a complex property
path using a string. For example.
$object:=New object("one";1;"child";New object("two";2))
I can use
$object.child.two (or $object["child"]["two"])
But if I pass $object and the string "child.two" to another method, I can't get
the property unless I parse the path and handle each level. I think it would be
helpful to have an extra parameter to OB Get and OB Get type to treat the
property as a valid path, e.g.
OB Get($object;"child.two";*) `2
OB Get type($object;"child.two";*) `Is real
John DeSoi, Ph.D.
> On Apr 30, 2018, at 10:49 AM, Kirk Brooks via 4D_Tech <[email protected]>
> wrote:
>
> BTW - object properties (keys) are becoming more restrictive
> <http://doc.4d.com/4Dv16R6/4D/16-R6/Using-object-notation-preview.300-3548251.en.html>.
> They must begin with a letter, underscore or $. But the $ doesn't have any
> particular significance in the name and can be used anywhere. Numbers are
> OK just not for the first character. Dashes, spaces and such are not to be
> used. As someone else said if you are still using spaces in names of
> anything (except constants I suppose) you deserve what you get. Just stop
> it.
**********************************************************************
4D Internet Users Group (4D iNUG)
FAQ: http://lists.4d.com/faqnug.html
Archive: http://lists.4d.com/archives.html
Options: https://lists.4d.com/mailman/options/4d_tech
Unsub: mailto:[email protected]
**********************************************************************