コード例 #1
0
ファイル: AbcPrinter.cs プロジェクト: heon21st/flashdevelop
			public LabelMgr(AbcPrinter enclosingInstance)
			{
				InitBlock(enclosingInstance);
				//UPGRADE_TODO: Class 'java.util.HashMap' was converted to 'System.Collections.Hashtable' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javautilHashMap'"
				labels = new System.Collections.Hashtable();
			}
コード例 #2
0
ファイル: AbcPrinter.cs プロジェクト: heon21st/flashdevelop
			private void  InitBlock(AbcPrinter enclosingInstance)
			{
				this.enclosingInstance = enclosingInstance;
			}
コード例 #3
0
ファイル: AbcPrinter.cs プロジェクト: heon21st/flashdevelop
			public MultiName(AbcPrinter enclosingInstance)
			{
				InitBlock(enclosingInstance);
			}
コード例 #4
0
ファイル: AbcPrinter.cs プロジェクト: heon21st/flashdevelop
			public MethodInfo(AbcPrinter enclosingInstance)
			{
				InitBlock(enclosingInstance);
			}
コード例 #5
0
		public override void  doABC(DoABC tag)
		{
			if (abc)
			{
				open(tag);
				end();
				AbcPrinter abcPrinter = new AbcPrinter(tag.abc, out_Renamed, showOffset, indent_Renamed_Field);
				abcPrinter.print();
				close(tag);
			}
			else if (showActions)
			{
				open(tag);
				if (tag.code == flash.swf.TagValues_Fields.stagDoABC2)
					out_Renamed.Write(" name='" + tag.name + "'");
				end();
				
				ContextStatics contextStatics = new ContextStatics();
				contextStatics.use_static_semantics = true;
				contextStatics.dialect = 9;
				
				//UPGRADE_ISSUE: The following fragment of code could not be parsed and was not converted. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1156'"
				Debug.Assert(swfVersion != null, "header should have been parsed already, but wasn't");
				contextStatics.setAbcVersion(ContextStatics.getTargetAVM(swfVersion));
				contextStatics.use_namespaces.addAll(ContextStatics.getRequiredUseNamespaces(swfVersion));
				
				Context context = new Context(contextStatics);
				context.setHandler(new CompilerHandler());
				AbcParser abcParser = new AbcParser(context, tag.abc);
				context.setEmitter(new ActionBlockEmitter(context, tag.name, new StringPrintWriter(), new StringPrintWriter(), false, false, false, false));
				ProgramNode programNode = abcParser.parseAbc();
				
				if (programNode == null)
				{
					//UPGRADE_TODO: Method 'java.io.PrintWriter.println' was converted to 'System.IO.TextWriter.WriteLine' which has a different behavior. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1073_javaioPrintWriterprintln_javalangString'"
					out_Renamed.WriteLine("<!-- Error: could not parse abc -->");
				}
				else if (decompile)
				{
					//                PrettyPrinter prettyPrinter = new PrettyPrinter(out);
					//                programNode.evaluate(context, prettyPrinter);
				}
				else
				{
					SyntaxTreeDumper syntaxTreeDumper = new SyntaxTreeDumper(out_Renamed, indent_Renamed_Field);
					programNode.evaluate(context, syntaxTreeDumper);
				}
				
				close(tag);
			}
			else
			{
				open(tag);
				close();
			}
		}