**** Merged from MCS ****
[mono-project.git] / mcs / class / Microsoft.JScript / Microsoft.JScript / ScriptObject.cs
blobcb17ee054e64beb132bd60960d21ec26529686d7
1 //
2 // ScriptObject.cs:
3 //
4 // Author: Cesar Octavio Lopez Nataren
5 //
6 // (C) 2003, Cesar Octavio Lopez Nataren, <cesar@ciencias.unam.mx>
7 //
9 //
10 // Permission is hereby granted, free of charge, to any person obtaining
11 // a copy of this software and associated documentation files (the
12 // "Software"), to deal in the Software without restriction, including
13 // without limitation the rights to use, copy, modify, merge, publish,
14 // distribute, sublicense, and/or sell copies of the Software, and to
15 // permit persons to whom the Software is furnished to do so, subject to
16 // the following conditions:
17 //
18 // The above copyright notice and this permission notice shall be
19 // included in all copies or substantial portions of the Software.
20 //
21 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
22 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
23 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
24 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
25 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
26 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
27 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30 using System;
31 using System.Globalization;
32 using System.Reflection;
33 using Microsoft.JScript.Vsa;
35 namespace Microsoft.JScript {
37 public abstract class ScriptObject : IReflect {
39 public VsaEngine engine;
41 public FieldInfo GetField (string name, BindingFlags bindFlags)
43 throw new NotImplementedException ();
46 public virtual FieldInfo [] GetFields (BindingFlags bindFlags)
48 throw new NotImplementedException ();
51 public abstract MemberInfo [] GetMember (string name, BindingFlags bindFlags);
53 public abstract MemberInfo [] GetMembers (BindingFlags bindFlags);
55 public MethodInfo GetMethod (string name, BindingFlags bindFlags)
57 throw new NotImplementedException ();
60 public MethodInfo GetMethod (string name, BindingFlags bindFlags,
61 Binder binder, Type [] types, ParameterModifier [] modifiers)
63 throw new NotImplementedException ();
66 public virtual MethodInfo[] GetMethods (BindingFlags bindFlags)
68 throw new NotImplementedException ();
71 public virtual MethodInfo GetMethods (string name, BindingFlags bindFlags)
73 throw new NotImplementedException ();
76 public ScriptObject GetParent ()
78 throw new NotImplementedException ();
81 public PropertyInfo GetProperty (string name, BindingFlags bindFlags)
83 throw new NotImplementedException ();
86 public PropertyInfo GetProperty (string name, BindingFlags bindFlags,
87 Binder binder, Type returnType, Type [] types,
88 ParameterModifier [] modifiers)
90 throw new NotImplementedException ();
93 public virtual PropertyInfo [] GetProperties (BindingFlags bindFlags)
95 throw new NotImplementedException ();
98 public virtual Object InvokeMember (string name, BindingFlags invokeAttr,
99 Binder binder, Object target,
100 Object[] args, ParameterModifier [] modifiers,
101 CultureInfo locale, string[] namedParameters)
103 throw new NotImplementedException ();
106 public Object this [double index] {
107 get { throw new NotImplementedException (); }
108 set { throw new NotImplementedException ();}
111 public Object this [int index] {
112 get { throw new NotImplementedException (); }
113 set { throw new NotImplementedException (); }
116 public Object this [string name] {
117 get { throw new NotImplementedException (); }
118 set { throw new NotImplementedException (); }
122 public Object this [params Object [] pars] {
123 get { throw new NotImplementedException (); }
124 set { throw new NotImplementedException (); }
128 public virtual Type UnderlyingSystemType {
129 get { throw new NotImplementedException (); }