Nathan Adams
|
f24ab37810
|
chore: Impl From<&str> for Value, better dev ergonomics
|
2019-10-21 12:33:49 +02:00 |
Nathan Adams
|
796c641b3b
|
chore: Impl From<String> for Value, better dev ergonomics
|
2019-10-21 12:30:59 +02:00 |
David Wendt
|
ad17166c63
|
Store the player version in `Avm1` so that `current_swf_version` doesn't require the context.
|
2019-10-13 18:55:39 -04:00 |
David Wendt
|
4709d2d0b4
|
Revert "Allow overwriting virtual properties via setting `set` to `None`."
This reverts commit 0a8adfca6e5fce8835552c1c7aba063649ba3aeb.
|
2019-10-12 10:39:53 -04:00 |
David Wendt
|
59dc35b8a4
|
Allow scope chain resolution to retrieve virtual properties
|
2019-10-12 10:39:53 -04:00 |
David Wendt
|
d35e36def5
|
Allow overwriting virtual properties via setting `set` to `None`.
|
2019-10-12 10:39:52 -04:00 |
David Wendt
|
feaa3dd203
|
Add a version parameter to every DisplayObject impl
|
2019-10-12 10:39:52 -04:00 |
David Wendt
|
8668d47403
|
Add a player version parameter and expose it to AVM
|
2019-10-12 10:39:51 -04:00 |
David Wendt
|
2f257c83e8
|
Remove the representation split between functions defined with `DefineFunction` and `DefineFunction2`. Both are now represented with a single struct and enum.
|
2019-10-12 10:39:51 -04:00 |
Nathan Adams
|
d697d03cf0
|
Drop the `Attribute::` everywhere
|
2019-10-08 20:35:23 +02:00 |
Nathan Adams
|
3d09ec81e2
|
Add Attribute::DontEnum
|
2019-10-08 16:36:39 +02:00 |
Nathan Adams
|
f782aaee18
|
Add Attribute::ReadOnly
|
2019-10-08 15:24:57 +02:00 |
Nathan Adams
|
f2a4000ee2
|
Added object property attributes (initially just DontDelete)
|
2019-10-08 14:30:36 +02:00 |
Mike Welsh
|
b6eba80ebd
|
chore: cargo fmt
|
2019-10-06 14:57:43 -07:00 |
David Wendt
|
588b2bb061
|
Fixes to make tests compile again
|
2019-10-06 13:02:31 -07:00 |
David Wendt
|
a5865d7c7d
|
Implement DefineFunction2
|
2019-10-06 13:02:31 -07:00 |
David Wendt
|
002dd9904c
|
Implement `ActionDelete` / `ActionDelete2`
|
2019-10-06 13:02:31 -07:00 |
David Wendt
|
22f75b7a4c
|
Implement closure scope
|
2019-10-06 13:02:31 -07:00 |
David Wendt
|
d757ce0cd2
|
Implement arguments object.
|
2019-10-06 13:02:31 -07:00 |
David Wendt
|
9ede91df4f
|
Move `this` into the activation object.
Also, change the implicit `this` on functions to `active_clip` as per the `ActionContext` docstrings.
|
2019-10-06 13:02:31 -07:00 |
David Wendt
|
ca1fb713a3
|
Execute actions in MovieClip scope
|
2019-10-06 13:02:31 -07:00 |
David Wendt
|
215d4f2df4
|
Provide arguments as local variables as some functions look for these
|
2019-10-06 13:02:31 -07:00 |
David Wendt
|
f3d83908ab
|
All activation frames share the same stack (and can see each other's garbage).
|
2019-10-06 13:02:31 -07:00 |
David Wendt
|
667b30f4b5
|
Add scope chains for local variable resolution.
|
2019-10-06 13:02:31 -07:00 |
David Wendt
|
edc37dee5d
|
Add support for calling bare functions and returning from them.
|
2019-10-06 13:02:31 -07:00 |
David Wendt
|
00b5d9ecf5
|
Implement DefineFunction
|
2019-10-06 13:02:31 -07:00 |
David Wendt
|
83c832ce86
|
Distinguish between Native and ActionScript functions.
|
2019-10-06 13:02:31 -07:00 |
Mike Welsh
|
2740f3ccc1
|
chore: Globally allow clippy::unneeded_field_pattern
Often times we want to explicty destructure instead of using ..
because the compiler will emit errors if the structure changes.
(see https://github.com/rust-lang/rust-clippy/issues/1741 and #69)
|
2019-10-02 12:57:58 -07:00 |
Mike Welsh
|
b157354fef
|
chore: Fix clippy lints
|
2019-10-02 12:39:04 -07:00 |
Nathan Adams
|
2b54791cbb
|
Changed storage of object values to allow for dynamic (vs stored) properties
|
2019-10-02 10:49:08 -07:00 |
Mike Welsh
|
82c1116c42
|
chore: cargo fmt
|
2019-09-16 20:37:11 -07:00 |
David Wendt
|
130d9736bc
|
Allow builtins access to the AVM1 state directly.
|
2019-09-16 20:04:30 -07:00 |
Nathan Adams
|
a4cdbc4f70
|
Added `Math` unit tests, first avm tests :)
|
2019-09-02 22:19:09 +02:00 |
Nathan Adams
|
200129452a
|
Pass along `ActionContext` to functions
|
2019-09-02 19:28:38 +02:00 |
Nathan Adams
|
002272d7b5
|
Functions return `[type Function]` when converted to strings
|
2019-08-31 18:28:28 +02:00 |
Nathan Adams
|
7a18ece455
|
`DisplayObject`s all have a AVM1 `Value`. Added `toString()` default method for Objects (but not functions)
|
2019-08-31 17:54:15 +02:00 |
Nathan Adams
|
2eca394a58
|
Implemented `typeof` for movieclips and functions
|
2019-08-31 14:09:37 +02:00 |
Nathan Adams
|
543419abee
|
Added `Object::set_function` helper method
|
2019-08-30 20:49:56 +02:00 |
Nathan Adams
|
2fd7d456a4
|
Movie clip access from AS. Functions are now callable objects, and receive `this`.
|
2019-08-30 20:37:48 +02:00 |
Nathan Adams
|
2378ea3881
|
Shuffled around some avm1 builtins & types
|
2019-08-28 21:43:20 -05:00 |