OSDN Git Service

Version 3.00
[vbslib/main.git] / _src / Test / vbsool_test / T_GetObject / objs / ClassB_obj.vbs
1 Option Explicit \r
2 \r
3 Dim  g_SrcPath\r
4 \r
5 Class  ClassB_vbs : Public FullPath : End Class\r
6 Dim  g_ClassB_vbs\r
7 Set  g_ClassB_vbs =_\r
8    new ClassB_vbs\r
9 With g_ClassB_vbs\r
10   .FullPath = g_SrcPath\r
11 End With\r
12 \r
13 \r
14 \r
15 Sub  get_StaticObjects( InterfaceName, out_Obj )\r
16   If IsEmpty( InterfaceName ) or  InterfaceName = "ClassI" Then\r
17     Set  out_Obj = get_ClassB()\r
18   End If\r
19 End Sub\r
20 \r
21 \r
22 '-------------------------------------------------------------------------\r
23 ' ### <<<< [ClassB] Class >>>>\r
24 '-------------------------------------------------------------------------\r
25 Dim  g_ClassB\r
26 \r
27 Function    get_ClassB()  '// has_interface_of ClassI\r
28   If IsEmpty( g_ClassB ) Then _\r
29     Set g_ClassB = new ClassB\r
30   Set get_ClassB =   g_ClassB\r
31 End Function\r
32 \r
33 \r
34 Class ClassB  '// has_interface_of ClassI\r
35   Public  Property Get  Name()     : Name     = TypeName(Me) : End Property\r
36   Public  Property Get  TrueName() : TrueName = TypeName(Me) : End Property\r
37   Public Sub  Validate() : End Sub\r
38   '--- Name is factory pattern.\r
39 \r
40   Public Property Get  DefineInfo() : Set DefineInfo = g_ClassB_vbs : End Property\r
41 \r
42   Public  Value\r
43   Public Function  Method1() : Method1 = "ClassB.Method1" : End Function\r
44 End Class\r
45 \r
46 \r
47  \r