Package org.erlide.engine.internal.model.erlang

Source Code of org.erlide.engine.internal.model.erlang.ErlImportExport

package org.erlide.engine.internal.model.erlang;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;

import org.erlide.engine.model.erlang.ErlangFunction;
import org.erlide.engine.model.erlang.IErlImportExport;
import org.erlide.engine.model.root.IErlElement;

import com.ericsson.otp.erlang.OtpErlangList;
import com.ericsson.otp.erlang.OtpErlangObject;
import com.ericsson.otp.erlang.OtpErlangTuple;
import com.google.common.collect.Lists;

public abstract class ErlImportExport extends ErlMember implements IErlImportExport {

    protected List<ErlangFunction> fFunctions;

    protected ErlImportExport(final IErlElement parent, final String name,
            final OtpErlangList functionList) {
        super(parent, name);
        fFunctions = new ArrayList<ErlangFunction>(functionList.arity());
        for (final OtpErlangObject object : functionList) {
            fFunctions.add(new ErlangFunction((OtpErlangTuple) object));
        }
    }

    @Override
    public boolean hasFunction(final ErlangFunction f) {
        return fFunctions.contains(f);
    }

    @Override
    public Collection<ErlangFunction> getFunctions() {
        return Collections.unmodifiableCollection(Lists.newArrayList(fFunctions));
    }

}
TOP

Related Classes of org.erlide.engine.internal.model.erlang.ErlImportExport

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.