I have a method with this signature
public struct function setVerificationToken(
required numeric userID
, required numeric regID
, required numeric threshold
, required string channel
, required string token
){
I miss typed this so the code looked like this:
notice the missing comma below.
public struct function setVerificationToken(
required numeric userID
required numeric regID
, required numeric threshold
, required string channel
, required string token
){
No error was thrown but all of the arguments showed up offset by 1 starting at the regID.
yeah, that’s a bit of a mess, like cfparam, there are a lot of variations
look at how this this clusterfuck gets parsed
<cfscript>
public struct function setVerificationToken(
requirez numerica userID="zac"
, required numerica threshold
, required string channel
, required string token
){
}
dump(setVerificationToken)
dump(getMetaData(setVerificationToken))
</cfscript>
That is strange. Thanks for the info.
Dunno if this is just yet another trycf quirk, but this crashes on both ACF 2023 and 2025, 2021 works
I wonder if it’s possibly useful/intended how Lucee apparently accepts compound/custom datatypes for function arguments, or if that is purely a flaw.