Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Questions about prototype information presentation #302

Open
Tracked by #214
sxzxs opened this issue Sep 5, 2023 · 6 comments
Open
Tracked by #214

Questions about prototype information presentation #302

sxzxs opened this issue Sep 5, 2023 · 6 comments

Comments

@sxzxs
Copy link

sxzxs commented Sep 5, 2023

567905dd9a3408b4e58913a96f29707
495c3b945ae557fa1c866606f232064

The prototype of the any class should be an empty string, but it is not in the image

@zero-plusplus
Copy link
Owner

Thanks for the report.

The prototype of the any class should be an empty string

I am not yet familiar with the v2 specs, what does the above mean?

Since these data are retrieved from the debugger, they should be in accordance with the v2 spec.

@sxzxs
Copy link
Author

sxzxs commented Sep 5, 2023

My interview is as follows:
image
I'm actually not familiar with the syntax rules, but the result is an empty string,

@zero-plusplus
Copy link
Owner

I have confirmed the issue.

I have not had time to check, but it is possible that I am confusing the <base> field with a simple Base field, which is causing this problem.

It may take some time to fix this issue as I am currently developing an extension to support AutoHotkey.

@zero-plusplus zero-plusplus mentioned this issue Sep 5, 2023
62 tasks
@zero-plusplus
Copy link
Owner

I just checked. I knew the issue was due to my confusing the <base> field with the Base field.

A fix for this issue has been added to tasks.
The actual fix will be delayed in favor of another extension as mentioned above.

@Lexikos
Copy link

Lexikos commented Apr 26, 2024

The prototype of the any class should be an empty string, but it is not in the image

The prototype of the Any class should be a Prototype object, and it is in the image.

object.prototype.base.base

That is the Base of the Prototype of the Any class, and it is also in the image (Base: ""). This is a real property which can be evaluated in the script, and can be found by HasProp and similar.

MsgBox (Any.GetOwnPropDesc)(Any.Prototype, 'Base').Get.Name  ; ObjGetBase

There is no <base> shown for Any.Prototype because it does not have a base. This is not an error. <base> is not an actual property and is only returned by the debugger engine (part of AutoHotkey) if the object has a base object. It just happens that in v2, the only object that doesn't have a base object is Any.Prototype. It is much more common in v1.

If DBGP is used to query the <base> pseudo-property of an object which has no base, it returns an empty value of the DBGP type undefined, not string. This is consistent with the fact that <base> is not listed in the object's properties. (Anyway, it likely will not be listed at all in v2.1-alpha.10; see #324.)

There does not appear to be anything to fix.

@zero-plusplus
Copy link
Owner

Thank you.
I will close this Issues when I publish v2.0.0, which will resolve the <base> issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants