}
}
else return null;
Position line = data.cfml.getPosition();
TagLibTagScript script = tlt.getScript();
//TagLibTag tlt = CFMLTransformer.getTLT(data.cfml,type);
if(script.getContext()==CTX_CFC)data.isCFC=true;
else if(script.getContext()==CTX_INTERFACE)data.isInterface=true;
//Tag tag=new TagComponent(line);
Tag tag=getTag(data,parent,tlt, line,null);
tag.setTagLibTag(tlt);
tag.setScriptBase(true);
// add component meta data
if(data.isCFC) {
addMetaData(data,tag,IGNORE_LIST_COMPONENT);
}
if(data.isInterface) {
addMetaData(data,tag,IGNORE_LIST_INTERFACE);
}
//EvaluatorPool.getPool();
comments(data);
// attributes
//attributes(func,data);
Attribute[] attrs = attributes(tag,tlt,data,SEMI_BLOCK,LitString.EMPTY,script.getRtexpr()?Boolean.TRUE:Boolean.FALSE,null,false);
for(int i=0;i<attrs.length;i++){
tag.addAttribute(attrs[i]);
}
comments(data);
// body
if(tlt.getHasBody()){
Body body=new BodyBase();
boolean wasSemiColon=statement(data,body,script.getContext());
if(!wasSemiColon || !tlt.isBodyFree() || body.hasStatements())
tag.setBody(body);