-
Notifications
You must be signed in to change notification settings - Fork 8
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
support for turning calls into compile time constants #2067
support for turning calls into compile time constants #2067
Conversation
3654546
to
ec74fd2
Compare
ec74fd2
to
85c3595
Compare
@Override | ||
public boolean isCompileTimeConst() | ||
{ | ||
var result = |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some of these may be redundant or could be relaxed.
ebdfacc
to
bebe398
Compare
bebe398
to
eec5417
Compare
963139b
to
b23155f
Compare
b23155f
to
cd9bc1d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very nice and clean patch compared with the big impact this has!
One case I am unsure of is this:
side_effect is say "this does something!"
point(x,y i32) : side_effect is
as_string => "$x,$y"
c := point 3 4
say c
Does this create a constant out of point 3 4
? If so, this might be a bug.
Some more minor comments in the code.
ec00d58
to
321417b
Compare
I now check if the inherited features code contains only declarations. |
321417b
to
2eba5bb
Compare
a
instantiation is compiled to: