5 // Cesar Lopez Nataren (cesar@ciencias.unam.mx)
7 // (C) 2003, Cesar Lopez Nataren
11 // Permission is hereby granted, free of charge, to any person obtaining
12 // a copy of this software and associated documentation files (the
13 // "Software"), to deal in the Software without restriction, including
14 // without limitation the rights to use, copy, modify, merge, publish,
15 // distribute, sublicense, and/or sell copies of the Software, and to
16 // permit persons to whom the Software is furnished to do so, subject to
17 // the following conditions:
19 // The above copyright notice and this permission notice shall be
20 // included in all copies or substantial portions of the Software.
22 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
23 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
24 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
25 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
26 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
27 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
32 using System
.Collections
;
34 using Microsoft
.JScript
.Vsa
;
36 namespace Microsoft
.JScript
{
38 internal class VsaScriptScope
: VsaItem
, IVsaScriptScope
{
40 internal VsaScriptScope parent
;
41 internal ArrayList items
;
42 internal GlobalScope scope
;
44 internal VsaScriptScope (VsaEngine engine
, string item_name
, VsaScriptScope parent
)
45 : base (engine
, item_name
, (VsaItemType
) 0, VsaItemFlag
.None
)
48 items
= new ArrayList (8);
51 public IVsaScriptScope Parent
{
52 get { return (IVsaScriptScope) parent; }
55 public IVsaItem
AddItem (string item_name
, VsaItemType type
)
57 throw new NotImplementedException ();
60 public IVsaItem
GetItem (string item_name
)
62 throw new NotImplementedException ();
65 public void RemoveItem (string item_name
)
67 throw new NotImplementedException ();
70 public void RemoveItem (IVsaItem item
)
72 throw new NotImplementedException ();
75 public int GetItemCount ()
80 public IVsaItem
GetItemAtIndex (int index
)
82 return (IVsaItem
) items
[index
];
85 public void RemoveItemAtIndex (int index
)
87 throw new NotImplementedException ();
90 public object GetObject ()
94 scope
= new GlobalScope (null, engine
);
96 scope
= new GlobalScope ((GlobalScope
) parent
.GetObject (),
102 public IVsaItem
CreateDynamicItem (string item_name
, VsaItemType type
)
104 throw new NotImplementedException ();