File: as1.as

package info (click to toggle)
ohcount 3.0.0-6.1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 4,828 kB
  • sloc: ansic: 6,534; ruby: 2,560; perl: 2,041; erlang: 350; lisp: 272; sh: 244; pascal: 196; vhdl: 150; haskell: 149; asm: 127; cs: 124; awk: 98; java: 92; php: 73; tcl: 58; xml: 57; fortran: 54; makefile: 32; python: 31; ada: 30; objc: 30; jsp: 28; sql: 18; cobol: 13; ml: 9; cpp: 3
file content (140 lines) | stat: -rw-r--r-- 5,886 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
actionscript	comment	/* SVN FILE: $Id: FakeObject.as 42 2008-03-26 03:18:02Z xpointsh $ */
actionscript	comment	/**
actionscript	comment	 * Description
actionscript	comment	 *
actionscript	comment	 * Fake
actionscript	comment	 * Copyright 2008, Sean Chatman and Garrett Woodworth
actionscript	comment	 *
actionscript	comment	 * Licensed under The MIT License
actionscript	comment	 * Redistributions of files must retain the above copyright notice.
actionscript	comment	 *
actionscript	comment	 * @filesource
actionscript	comment	 * @copyright		Copyright 2008, Sean Chatman and Garrett Woodworth
actionscript	comment	 * @link			http://code.google.com/p/fake-as3/
actionscript	comment	 * @package			fake
actionscript	comment	 * @subpackage		com.fake
actionscript	comment	 * @since			2008-03-06
actionscript	comment	 * @version			$Revision: 42 $
actionscript	comment	 * @modifiedby		$LastChangedBy: xpointsh $
actionscript	comment	 * @lastmodified	$Date: 2008-03-25 20:18:02 -0700 (Tue, 25 Mar 2008) $
actionscript	comment	 * @license			http://www.opensource.org/licenses/mit-license.php The MIT License
actionscript	comment	 */
actionscript	code	package com.fake
actionscript	code	{
actionscript	code		import flash.utils.*;
actionscript	blank	
actionscript	comment		/**
actionscript	comment		 * FakeObject is the root object for all classes
actionscript	comment		 * in Fake. It contains a reference to the class name
actionscript	comment		 * and class object. These are obtained by using the
actionscript	comment		 * reflection classes in flash.utils.
actionscript	comment		 */
actionscript	code		public dynamic class FakeObject extends Proxy
actionscript	code		{
actionscript	comment			/**
actionscript	comment			* The name of the top level subclass
actionscript	comment			*/
actionscript	code			[Transient] public var className:String;
actionscript	comment			/**
actionscript	comment			* A reference to the top level subclass
actionscript	comment			*/
actionscript	code			[Transient] public var ClassRef:Class;
actionscript	blank	
actionscript	code			private var __item:Array;
actionscript	blank	
actionscript	code			public function FakeObject()
actionscript	code			{
actionscript	code				getClassInfo();
actionscript	code				__item = new Array();
actionscript	code			}
actionscript	blank	
actionscript	comment			/**
actionscript	comment			 * This method is called by the constructor. Populates the className and ClassRef using
actionscript	comment			 * getQualifiedClassName and getDefinitionByName
actionscript	comment			 */
actionscript	code			private function getClassInfo():void
actionscript	code			{
actionscript	code				var qcName:Array = getQualifiedClassName(this).split("::");
actionscript	code				className = qcName[1];
actionscript	blank	
actionscript	code				var classPath:String = getQualifiedClassName(this).replace( "::", "." );
actionscript	code				ClassRef = getDefinitionByName(classPath) as Class;
actionscript	code			}
actionscript	blank	
actionscript	comment			/**
actionscript	comment			 * Override the callProperty of the flash_proxy
actionscript	comment			 * @param method
actionscript	comment			 * @param args
actionscript	comment			 * @return
actionscript	comment			 *
actionscript	comment			 */
actionscript	code			override flash_proxy function callProperty(method: *, ...args):*
actionscript	code			{
actionscript	code				try
actionscript	code				{
actionscript	code					return ClassRef.prototype[method].apply(method, args);
actionscript	code				}
actionscript	code				catch (e:Error)
actionscript	code				{
actionscript	code					return overload(method, args);
actionscript	code				}
actionscript	code			}
actionscript	blank	
actionscript	comment			/**
actionscript	comment			 * To be overriden by subclasses. Allows calling any method on any object that extends FakeOject
actionscript	comment			 * @param method
actionscript	comment			 * @param args
actionscript	comment			 *
actionscript	comment			 */
actionscript	code			protected function overload(method:*, args:Array):void
actionscript	code			{
actionscript	code			}
actionscript	blank	
actionscript	comment			/**
actionscript	comment			 * get a property on the object
actionscript	comment			 * @param name
actionscript	comment			 * @return
actionscript	comment			 *
actionscript	comment			 */
actionscript	code			override flash_proxy function getProperty(name:*):*
actionscript	code			{
actionscript	code	       	 	return overloadGetProperty(name);
actionscript	code		    }
actionscript	blank	
actionscript	code		    protected function overloadGetProperty(name:*):*
actionscript	code		    {
actionscript	code		    	return __item[name];
actionscript	code		    }
actionscript	blank	
actionscript	comment		    /**
actionscript	comment		     * Set a property on the object
actionscript	comment		     * @param name
actionscript	comment		     * @param value
actionscript	comment		     *
actionscript	comment		     */
actionscript	code		    override flash_proxy function setProperty(name:*, value:*):void
actionscript	code		    {
actionscript	code		        overloadSetProperty(name, value)
actionscript	code		    }
actionscript	blank	
actionscript	code		    protected function overloadSetProperty(name:*, value:*):void
actionscript	code		    {
actionscript	code		    	__item[name] = value;
actionscript	code		    }
actionscript	blank	
actionscript	comment		   	/**
actionscript	comment		     * Check if the property exits
actionscript	comment		     * @param name
actionscript	comment		     * @param value
actionscript	comment		     *
actionscript	comment		     */
actionscript	code		    override flash_proxy function hasProperty(name:*):Boolean
actionscript	code		    {
actionscript	code		    	if (__item[name])
actionscript	code		    	{
actionscript	code		    		return true;
actionscript	code		    	}
actionscript	code		    	return false;
actionscript	code		    }
actionscript	code		}
actionscript	code	}