Examples of ITraitsVisitor


Examples of org.apache.flex.abc.visitors.ITraitsVisitor

     * Adds an instance trait for a bindable variable,
     * such as one created by an id attribute.
     */
    public void addBindableVariableTrait(Name varName, Name varType, IDefinition def)
    {
        ITraitsVisitor old_tv = classScope.traitsVisitor;
        try
        {
            // Make sure the itraits is the traitsvisitor as we make the various bindable
            // definitions
            classScope.traitsVisitor = itraits;
View Full Code Here

Examples of org.apache.flex.abc.visitors.ITraitsVisitor

     */
    public void finishScript()
    {
        IScriptVisitor sv = visitor.visitScript();
        sv.visit();
        ITraitsVisitor scriptTraits = sv.visitTraits();
        scriptTraits.visit();
        scriptTraits.visitClassTrait(ABCConstants.TRAIT_Class, className, 0, cinfo);
        scriptTraits.visitEnd();
        MethodInfo scriptInitMethodInfo = new MethodInfo();
        IMethodVisitor scriptInitMethodVisitor = visitor.visitMethod(scriptInitMethodInfo);
        scriptInitMethodVisitor.visit();
        MethodBodyInfo scriptInitMethodBodyInfo = new MethodBodyInfo();
        scriptInitMethodBodyInfo.setMethodInfo(scriptInitMethodInfo);
View Full Code Here

Examples of org.apache.flex.abc.visitors.ITraitsVisitor

    }

    @Override
    public ITraitsVisitor visitTraits()
    {
        final ITraitsVisitor visitor = new ScopedDefinitionTraitsVisitor(scopeBuilder,
                                                                        scope,
                                                                        false);
        return visitor;
    }
View Full Code Here

Examples of org.apache.flex.abc.visitors.ITraitsVisitor

        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();
View Full Code Here

Examples of org.apache.flex.abc.visitors.ITraitsVisitor

        {
            IClassVisitor cv = vabc.visitClass(this.instanceInfos[i], this.classInfos[i]);

            if (cv != null)
            {
                ITraitsVisitor tv = cv.visitClassTraits();
                readTraits(p, tv, this.classInfoToTraits.get(this.classInfos[i]));
                tv.visitEnd();

                tv = cv.visitInstanceTraits();
                readTraits(p, tv, this.instanceInfoToTraits.get(this.instanceInfos[i]));
                tv.visitEnd();
                cv.visitEnd();
            }
        }

        int n_scripts = p.readU30();
View Full Code Here

Examples of org.apache.flex.abc.visitors.ITraitsVisitor

    void readScript(ABCReader p, IScriptVisitor sv)
    {
        sv.visit();
        sv.visitInit(this.readPool(methodInfos, p.readU30(), "methodInfo"));
        ITraitsVisitor scriptTraitsVisitor = sv.visitTraits();
        readTraits(p, scriptTraitsVisitor);
        scriptTraitsVisitor.visitEnd();
        sv.visitEnd();
    }
View Full Code Here

Examples of org.apache.flex.abc.visitors.ITraitsVisitor

        mb.max_scope = p.readU30();
        mb.code_len = p.readU30();
        mb.setMethodInfo(this.readPool(methodInfos, method_id, "methodInfo"));

        IMethodBodyVisitor mv = null;
        ITraitsVisitor tv = NilVisitors.NIL_TRAITS_VISITOR;

        if (this.readPool(methodVisitors, method_id, "methodVisitor") != null)
            mv = this.readPool(methodVisitors, method_id, "methodVisitor").visitBody(mb);

        if (mv != null)
        {
            mv.visit();
            readCode(mb, mv, p);
            tv = mv.visitTraits();
            mv.visitEnd();
            this.readPool(methodVisitors, method_id, "methodVisitor").visitEnd();
            this.methodVisitors[method_id] = null;
        }
        else
        {
            p.pos += mb.code_len;
            skipExceptions(p);
        }

        readTraits(p, tv);
        tv.visitEnd();
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.