Jim Partin
05/16/2022, 5:24 PMAdam Cameron
Jim Partin
05/16/2022, 5:30 PM/**
* @output false
**/
abstract component{
/**
* @output false
**/
public AbstractBase function init(){
return this;
}
}
AbstractSpecific.cfc
/**
* @output false
* @extends AbstractBase
**/
abstract component{
/**
* @output false
**/
public AbstractSpecific function init(){
Super.init();
return this;
}
}
ChildSpecific.cfc
/**
* @output false
* @extends AbstractSpecific
**/
component{
/**
* @output false
**/
public ChildSpecific function init(){
Super.init();
return this;
}
}Adam Cameron
@output
stuff in script-based CFCs btw. Script code doesn't bleed whitespace, which is all that annotation addresses.component extends=AbstractSpecific
etc, it works fine.Jim Partin
05/16/2022, 5:49 PMAdam Cameron
Jim Partin
05/16/2022, 5:54 PMAdam Cameron
Message component [ChildSpecific] has no private function with name [init]
Detail accessible functions are [INIT]
Jim Partin
05/16/2022, 5:55 PMAdam Cameron
Jim Partin
05/16/2022, 5:56 PMAdam Cameron
abstract
modifier off the component. Lucee still faceplants.
So you've found a bug in each. Nice work.@extends
should work. They just screwed it when they added abstract
@abstract true
in an annotation, it worksJim Partin
05/16/2022, 6:46 PMaliaspooryorik
Adam Cameron