Hi Alex,
Are your changes included in the nightly build ?
Thanks
Serkan
19.10.2018 09:48 tarihinde Alex Harui yazdı:
Turned out to be trickier than I thought. Externs use @const for both
read-only as well as true constants. There doesn’t seem to be a way
to distinguish one from the other. Adding an initial value causes it
to not be picked up as an extern. The initial value doesn’t really
matter because the initial value should be defined by the actual
implementation the externs represent, but it seemed like we should get
the right values in the AS in case we ever inline constants. So I
added a config entry to specify true constants. Volunteers are needed
to add more config entries for other constants. I just did uint and
int to prove it works.
You will need the changes to royale-compiler as well as royale-typedefs.
HTH,
-Alex
*From: *Alex Harui <[email protected]>
*Reply-To: *"[email protected]" <[email protected]>
*Date: *Thursday, October 18, 2018 at 5:51 PM
*To: *"[email protected]" <[email protected]>
*Subject: *Re: int.MAX_VALUE in function list
Looks like there is a bug in externc. The missing.js specified @const
but the output is var not const. I’ll try to take a few minutes to
see why.
-Alex
*From: *Alex Harui <[email protected]>
*Reply-To: *"[email protected]" <[email protected]>
*Date: *Thursday, October 18, 2018 at 5:35 PM
*To: *"[email protected]" <[email protected]>
*Subject: *Re: int.MAX_VALUE in function list
Well, we should probably tweak the compiler to get it to work.
-Alex
*From: *Serkan Taş <[email protected]>
*Reply-To: *"[email protected]" <[email protected]>
*Date: *Thursday, October 18, 2018 at 1:16 PM
*To: *"[email protected]" <[email protected]>
*Subject: *int.MAX_VALUE in function list
Hi,
When i am compiling class with method below i get compile error :
public function scrollToRange(anchorPosition:int = 0,
activePosition:int = int.MAX_VALUE):void
{
activePosition1:int = int.MAX_VALUE;
// if (!textDisplay)
// return;
// textDisplay.scrollToRange(anchorPosition, activePosition);
}
Error:
D:\dev\royale-emulation-works\apache-royale-0.9.4-bin-js-swf\royale-asjs\frameworks\projects\SparkRoyale\src\main\royale\spark\components\TextArea.as(753):
col: 80 Parameter initializer unknown or is not a compile-time
constant. An initial value of undefined will be used instead.
public function scrollToRange(anchorPosition:int = 0,
activePosition:int = int.MAX_VALUE):void
When change as below, compiles correctly.
public function scrollToRange(anchorPosition:int = 0,
activePosition:int = 0/*int.MAX_VALUE*/):void
{
var activePosition1:int = int.MAX_VALUE;
// if (!textDisplay)
// return;
// textDisplay.scrollToRange(anchorPosition, activePosition);
}
Can we say that int.MAX_VALUE usage in function signature not allowed ?
Thanks
Serkan