info.addInstruction(ABCConstants.OP_swap);
info.addInstruction(ABCConstants.OP_setproperty, infoSlotName);
info.labelNext(infoL1);
info.addInstruction(ABCConstants.OP_returnvalue);
ITraitsVisitor itraitsVisitor;
ITraitVisitor infoSlotVisitor;
if (isAppFlexInfo)
{
classGen.addCTraitsMethod(new Name("info"), Collections.<Name> emptyList(),
new Name("Object"), Collections.emptyList(), false, info);
itraitsVisitor = classGen.getCTraitsVisitor();
infoSlotVisitor = itraitsVisitor.visitSlotTrait(ABCConstants.TRAIT_Var, infoSlotName,
ITraitsVisitor.RUNTIME_SLOT, new Name(IASLanguageConstants.Object), LexicalScope.noInitializer);
}
else
{
classGen.addITraitsMethod(new Name("info"), Collections.<Name> emptyList(),
new Name("Object"), Collections.emptyList(), false, true, true, info);
itraitsVisitor = classGen.getITraitsVisitor();
infoSlotVisitor = itraitsVisitor.visitSlotTrait(ABCConstants.TRAIT_Var, infoSlotName,
ITraitsVisitor.RUNTIME_SLOT, new Name(IASLanguageConstants.Object), LexicalScope.noInitializer);
}
infoSlotVisitor.visitStart();
infoSlotVisitor.visitEnd();