package com.intellij.lang.javascript.flex.importer; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.Nullable; /** * @author Maxim.Mossienko * Date: Oct 20, 2008 * Time: 7:02:07 PM */ interface FlexByteCodeInformationProcessor { void dumpStat(@NotNull @NonNls String stat); void hasError(@NotNull String error); void append(@NotNull @NonNls String str); void processMultinameAsPackageName(@NotNull Multiname name, @Nullable String parentName); void dumpToplevelAnonymousMethod(final @NotNull Abc abc, final @NotNull MethodInfo m); void dumpTopLevelTraits(final @NotNull Abc abc, final @NotNull Traits t, final String indent); boolean doDumpMember(final @NotNull MemberInfo memberInfo); void appendMethodSeparator(); void appendFieldSeparator(); String getAbcInSwfIndent(); boolean doDumpMetaData(final @NotNull MetaData md); String REST_PARAMETER_TYPE = "..."; void processParameter(final @NotNull String name, @Nullable Multiname type, String parentName, @Nullable Multiname value, boolean rest); boolean doStarTypeDumpInExtends(); boolean doStarMetaAttrNameDump(); void setProcessingInterface(final boolean anInterface); String getParentName(final MemberInfo member); void processVariable(SlotInfo info, String indent, String attr); void processFunction(MethodInfo methodInfo, boolean referenceNameRequested, Abc abc, String indent, String attr); void processMetadata(MetaData metaData); void processClass(SlotInfo slotInfo, Abc abc, String attr, String indent); }