Ignore:
Timestamp:
May 12, 2007, 6:31:13 PM (18 years ago)
Author:
dai
Message:

Objectクラス、Stringクラスの定義をSystem名前空間に入れると共に、コンパイラ側で両者のクラスをSystem名前空間に依存しない特殊型として扱うようにした。
System.Diagnostics名前空間を導入した。
Namespaceステートメントのコード補間機能に対応。

Location:
Include/Classes/System/Diagnostics
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • Include/Classes/System/Diagnostics/Debug.ab

    r69 r246  
     1Namespace System
     2    Namespace Diagnostics
     3
     4
    15#ifdef _DEBUG
    26
    3 Class Debug
    4     Static base As _System_TraceBase()
    5 
    6 Public
    7 
    8     '----------------------------------------------------------------
    9     ' パブリック メソッド
    10     '----------------------------------------------------------------
    11 
    12     ' アサート(コールスタックを表示)
    13     Static Sub Assert( condition As Boolean )
    14         base.Assert( condition )
    15     End Sub
    16 
    17     ' アサート(メッセージ文字列を表示)
    18     Static Sub Assert( condition As Boolean, message As String )
    19         base.Assert( condition, message )
    20     End Sub
    21 
    22     ' アサート(メッセージ文字列と詳細文字列を表示)
    23     Static Sub Assert( condition As Boolean, message As String, detailMessage As String )
    24         base.Assert( condition, message, detailMessage )
    25     End Sub
    26 
    27 
    28     ' インデントレベルを上げる
    29     Static Sub Indent()
    30         base.Indent()
    31     End Sub
    32 
    33     ' インデントレベルを下げる
    34     Static Sub Unindent()
    35         base.Unindent()
    36     End Sub
    37 
    38     ' 文字列を出力
    39     Static Sub Write( value As Object )
    40         base.Write( value )
    41     End Sub
    42     Static Sub Write( message As String )
    43         base.Write( message )
    44     End Sub
    45     Static Sub Write( value As Object, category As String )
    46         base.Write( value, category )
    47     End Sub
    48     Static Sub Write( message As String, category As String )
    49         base.Write( message, category )
    50     End Sub
    51 
    52     ' 一行の文字列を出力
    53     Static Sub WriteLine( value As Object )
    54         base.WriteLine( value )
    55     End Sub
    56     Static Sub WriteLine( message As String )
    57         base.WriteLine( message )
    58     End Sub
    59     Static Sub WriteLine( value As Object, category As String )
    60         base.WriteLine( value, category )
    61     End Sub
    62     Static Sub WriteLine( message As String, category As String )
    63         base.WriteLine( message, category )
    64     End Sub
    65 
    66     ' 条件をもとに文字列を出力
    67     Static Sub WriteIf( condition As Boolean, value As Object )
    68         base.WriteIf( condition, value )
    69     End Sub
    70     Static Sub WriteIf( condition As Boolean, message As String )
    71         base.WriteIf( condition, message )
    72     End Sub
    73     Static Sub WriteIf( condition As Boolean, value As Object, category As String )
    74         base.WriteIf( condition, value, category )
    75     End Sub
    76     Static Sub WriteIf( condition As Boolean, message As String, category As String )
    77         base.WriteIf( condition, message, category )
    78     End Sub
    79 
    80     ' 条件をもとに一行の文字列を出力
    81     Static Sub WriteLineIf( condition As Boolean, message As String )
    82         base.WriteLineIf( condition, message )
    83     End Sub
    84     Static Sub WriteLineIf( condition As Boolean, value As Object )
    85         base.WriteLineIf( condition, value )
    86     End Sub
    87     Static Sub WriteLineIf( condition As Boolean, value As Object, category As String )
    88         base.WriteLineIf( condition, value, category )
    89     End Sub
    90     Static Sub WriteLineIf( condition As Boolean, message As String, category As String )
    91         base.WriteLineIf( condition, message, category )
    92     End Sub
    93 
    94 
    95     '----------------------------------------------------------------
    96     ' パブリック プロパティ
    97     '----------------------------------------------------------------
    98 
    99     ' IndentLevelプロパティ
    100     Static Function IndentLevel() As Long
    101         Return base.IndentLevel
    102     End Function
    103     Static Sub IndentLevel( indentLevel As Long )
    104         base.IndentLevel = indentLevel
    105     End Sub
    106 
    107     ' IndentSizeプロパティ
    108     Static Function IndentSize() As Long
    109         Return base.IndentSize
    110     End Function
    111     Static Sub IndentSize( size As Long )
    112         base.IndentSize = size
    113     End Sub
    114 
    115     ' Listenersプロパティ
    116     Static Function Listeners() As TraceListenerCollection
    117         Return base.Listeners
    118     End Function
    119 End Class
     7        Class Debug
     8            Static base As _System_TraceBase()
     9
     10        Public
     11
     12            '----------------------------------------------------------------
     13            ' パブリック メソッド
     14            '----------------------------------------------------------------
     15
     16            ' アサート(コールスタックを表示)
     17            Static Sub Assert( condition As Boolean )
     18                base.Assert( condition )
     19            End Sub
     20
     21            ' アサート(メッセージ文字列を表示)
     22            Static Sub Assert( condition As Boolean, message As String )
     23                base.Assert( condition, message )
     24            End Sub
     25
     26            ' アサート(メッセージ文字列と詳細文字列を表示)
     27            Static Sub Assert( condition As Boolean, message As String, detailMessage As String )
     28                base.Assert( condition, message, detailMessage )
     29            End Sub
     30
     31
     32            ' インデントレベルを上げる
     33            Static Sub Indent()
     34                base.Indent()
     35            End Sub
     36
     37            ' インデントレベルを下げる
     38            Static Sub Unindent()
     39                base.Unindent()
     40            End Sub
     41
     42            ' 文字列を出力
     43            Static Sub Write( value As Object )
     44                base.Write( value )
     45            End Sub
     46            Static Sub Write( message As String )
     47                base.Write( message )
     48            End Sub
     49            Static Sub Write( value As Object, category As String )
     50                base.Write( value, category )
     51            End Sub
     52            Static Sub Write( message As String, category As String )
     53                base.Write( message, category )
     54            End Sub
     55
     56            ' 一行の文字列を出力
     57            Static Sub WriteLine( value As Object )
     58                base.WriteLine( value )
     59            End Sub
     60            Static Sub WriteLine( message As String )
     61                base.WriteLine( message )
     62            End Sub
     63            Static Sub WriteLine( value As Object, category As String )
     64                base.WriteLine( value, category )
     65            End Sub
     66            Static Sub WriteLine( message As String, category As String )
     67                base.WriteLine( message, category )
     68            End Sub
     69
     70            ' 条件をもとに文字列を出力
     71            Static Sub WriteIf( condition As Boolean, value As Object )
     72                base.WriteIf( condition, value )
     73            End Sub
     74            Static Sub WriteIf( condition As Boolean, message As String )
     75                base.WriteIf( condition, message )
     76            End Sub
     77            Static Sub WriteIf( condition As Boolean, value As Object, category As String )
     78                base.WriteIf( condition, value, category )
     79            End Sub
     80            Static Sub WriteIf( condition As Boolean, message As String, category As String )
     81                base.WriteIf( condition, message, category )
     82            End Sub
     83
     84            ' 条件をもとに一行の文字列を出力
     85            Static Sub WriteLineIf( condition As Boolean, message As String )
     86                base.WriteLineIf( condition, message )
     87            End Sub
     88            Static Sub WriteLineIf( condition As Boolean, value As Object )
     89                base.WriteLineIf( condition, value )
     90            End Sub
     91            Static Sub WriteLineIf( condition As Boolean, value As Object, category As String )
     92                base.WriteLineIf( condition, value, category )
     93            End Sub
     94            Static Sub WriteLineIf( condition As Boolean, message As String, category As String )
     95                base.WriteLineIf( condition, message, category )
     96            End Sub
     97
     98
     99            '----------------------------------------------------------------
     100            ' パブリック プロパティ
     101            '----------------------------------------------------------------
     102
     103            ' IndentLevelプロパティ
     104            Static Function IndentLevel() As Long
     105                Return base.IndentLevel
     106            End Function
     107            Static Sub IndentLevel( indentLevel As Long )
     108                base.IndentLevel = indentLevel
     109            End Sub
     110
     111            ' IndentSizeプロパティ
     112            Static Function IndentSize() As Long
     113                Return base.IndentSize
     114            End Function
     115            Static Sub IndentSize( size As Long )
     116                base.IndentSize = size
     117            End Sub
     118
     119            ' Listenersプロパティ
     120            Static Function Listeners() As TraceListenerCollection
     121                Return base.Listeners
     122            End Function
     123        End Class
    120124
    121125#else
    122126
    123 Class Debug
    124     Static base As _System_TraceBase()
    125 
    126 Public
    127 
    128     '----------------------------------------------------------------
    129     ' パブリック メソッド
    130     '----------------------------------------------------------------
    131 
    132     ' アサート(コールスタックを表示)
    133     Static Sub Assert( condition As Boolean )
    134         'base.Assert( condition )
    135     End Sub
    136 
    137     ' アサート(メッセージ文字列を表示)
    138     Static Sub Assert( condition As Boolean, message As String )
    139         'base.Assert( condition, message )
    140     End Sub
    141 
    142     ' アサート(メッセージ文字列と詳細文字列を表示)
    143     Static Sub Assert( condition As Boolean, message As String, detailMessage As String )
    144         'base.Assert( condition, message, detailMessage )
    145     End Sub
    146 
    147 
    148     ' インデントレベルを上げる
    149     Static Sub Indent()
    150         base.Indent()
    151     End Sub
    152 
    153     ' インデントレベルを下げる
    154     Static Sub Unindent()
    155         base.Unindent()
    156     End Sub
    157 
    158     ' 文字列を出力
    159     Static Sub Write( value As Object )
    160         'base.Write( value )
    161     End Sub
    162     Static Sub Write( message As String )
    163         'base.Write( message )
    164     End Sub
    165     Static Sub Write( value As Object, category As String )
    166         'base.Write( value, category )
    167     End Sub
    168     Static Sub Write( message As String, category As String )
    169         'base.Write( message, category )
    170     End Sub
    171 
    172     ' 一行の文字列を出力
    173     Static Sub WriteLine( value As Object )
    174         'base.WriteLine( value )
    175     End Sub
    176     Static Sub WriteLine( message As String )
    177         'base.WriteLine( message )
    178     End Sub
    179     Static Sub WriteLine( value As Object, category As String )
    180         'base.WriteLine( value, category )
    181     End Sub
    182     Static Sub WriteLine( message As String, category As String )
    183         'base.WriteLine( message, category )
    184     End Sub
    185 
    186     ' 条件をもとに文字列を出力
    187     Static Sub WriteIf( condition As Boolean, value As Object )
    188         'base.WriteIf( condition, value )
    189     End Sub
    190     Static Sub WriteIf( condition As Boolean, message As String )
    191         'base.WriteIf( condition, message )
    192     End Sub
    193     Static Sub WriteIf( condition As Boolean, value As Object, category As String )
    194         'base.WriteIf( condition, value, category )
    195     End Sub
    196     Static Sub WriteIf( condition As Boolean, message As String, category As String )
    197         'base.WriteIf( condition, message, category )
    198     End Sub
    199 
    200     ' 条件をもとに一行の文字列を出力
    201     Static Sub WriteLineIf( condition As Boolean, message As String )
    202         'base.WriteLineIf( condition, message )
    203     End Sub
    204     Static Sub WriteLineIf( condition As Boolean, value As Object )
    205         'base.WriteLineIf( condition, value )
    206     End Sub
    207     Static Sub WriteLineIf( condition As Boolean, value As Object, category As String )
    208         'base.WriteLineIf( condition, value, category )
    209     End Sub
    210     Static Sub WriteLineIf( condition As Boolean, message As String, category As String )
    211         'base.WriteLineIf( condition, message, category )
    212     End Sub
    213 
    214 
    215     '----------------------------------------------------------------
    216     ' パブリック プロパティ
    217     '----------------------------------------------------------------
    218 
    219     ' IndentLevelプロパティ
    220     Static Function IndentLevel() As Long
    221         Return base.IndentLevel
    222     End Function
    223     Static Sub IndentLevel( indentLevel As Long )
    224         base.IndentLevel = indentLevel
    225     End Sub
    226 
    227     ' IndentSizeプロパティ
    228     Static Function IndentSize() As Long
    229         Return base.IndentSize
    230     End Function
    231     Static Sub IndentSize( size As Long )
    232         base.IndentSize = size
    233     End Sub
    234 
    235     ' Listenersプロパティ
    236     Static Function Listeners() As TraceListenerCollection
    237         Return base.Listeners
    238     End Function
    239 End Class
     127        Class Debug
     128            Static base As _System_TraceBase()
     129
     130        Public
     131
     132            '----------------------------------------------------------------
     133            ' パブリック メソッド
     134            '----------------------------------------------------------------
     135
     136            ' アサート(コールスタックを表示)
     137            Static Sub Assert( condition As Boolean )
     138                'base.Assert( condition )
     139            End Sub
     140
     141            ' アサート(メッセージ文字列を表示)
     142            Static Sub Assert( condition As Boolean, message As String )
     143                'base.Assert( condition, message )
     144            End Sub
     145
     146            ' アサート(メッセージ文字列と詳細文字列を表示)
     147            Static Sub Assert( condition As Boolean, message As String, detailMessage As String )
     148                'base.Assert( condition, message, detailMessage )
     149            End Sub
     150
     151
     152            ' インデントレベルを上げる
     153            Static Sub Indent()
     154                base.Indent()
     155            End Sub
     156
     157            ' インデントレベルを下げる
     158            Static Sub Unindent()
     159                base.Unindent()
     160            End Sub
     161
     162            ' 文字列を出力
     163            Static Sub Write( value As Object )
     164                'base.Write( value )
     165            End Sub
     166            Static Sub Write( message As String )
     167                'base.Write( message )
     168            End Sub
     169            Static Sub Write( value As Object, category As String )
     170                'base.Write( value, category )
     171            End Sub
     172            Static Sub Write( message As String, category As String )
     173                'base.Write( message, category )
     174            End Sub
     175
     176            ' 一行の文字列を出力
     177            Static Sub WriteLine( value As Object )
     178                'base.WriteLine( value )
     179            End Sub
     180            Static Sub WriteLine( message As String )
     181                'base.WriteLine( message )
     182            End Sub
     183            Static Sub WriteLine( value As Object, category As String )
     184                'base.WriteLine( value, category )
     185            End Sub
     186            Static Sub WriteLine( message As String, category As String )
     187                'base.WriteLine( message, category )
     188            End Sub
     189
     190            ' 条件をもとに文字列を出力
     191            Static Sub WriteIf( condition As Boolean, value As Object )
     192                'base.WriteIf( condition, value )
     193            End Sub
     194            Static Sub WriteIf( condition As Boolean, message As String )
     195                'base.WriteIf( condition, message )
     196            End Sub
     197            Static Sub WriteIf( condition As Boolean, value As Object, category As String )
     198                'base.WriteIf( condition, value, category )
     199            End Sub
     200            Static Sub WriteIf( condition As Boolean, message As String, category As String )
     201                'base.WriteIf( condition, message, category )
     202            End Sub
     203
     204            ' 条件をもとに一行の文字列を出力
     205            Static Sub WriteLineIf( condition As Boolean, message As String )
     206                'base.WriteLineIf( condition, message )
     207            End Sub
     208            Static Sub WriteLineIf( condition As Boolean, value As Object )
     209                'base.WriteLineIf( condition, value )
     210            End Sub
     211            Static Sub WriteLineIf( condition As Boolean, value As Object, category As String )
     212                'base.WriteLineIf( condition, value, category )
     213            End Sub
     214            Static Sub WriteLineIf( condition As Boolean, message As String, category As String )
     215                'base.WriteLineIf( condition, message, category )
     216            End Sub
     217
     218
     219            '----------------------------------------------------------------
     220            ' パブリック プロパティ
     221            '----------------------------------------------------------------
     222
     223            ' IndentLevelプロパティ
     224            Static Function IndentLevel() As Long
     225                Return base.IndentLevel
     226            End Function
     227            Static Sub IndentLevel( indentLevel As Long )
     228                base.IndentLevel = indentLevel
     229            End Sub
     230
     231            ' IndentSizeプロパティ
     232            Static Function IndentSize() As Long
     233                Return base.IndentSize
     234            End Function
     235            Static Sub IndentSize( size As Long )
     236                base.IndentSize = size
     237            End Sub
     238
     239            ' Listenersプロパティ
     240            Static Function Listeners() As TraceListenerCollection
     241                Return base.Listeners
     242            End Function
     243        End Class
    240244
    241245#endif
     246
     247    End Namespace
     248End Namespace
  • Include/Classes/System/Diagnostics/Trace.ab

    r69 r246  
     1Namespace System
     2    Namespace Diagnostics
    13
    2 Class Trace
    3     Static base As _System_TraceBase()
     4        Class Trace
     5            Static base As _System_TraceBase()
    46
    5 Public
     7        Public
    68
    7     '----------------------------------------------------------------
    8     ' パブリック メソッド
    9     '----------------------------------------------------------------
     9            '----------------------------------------------------------------
     10            ' パブリック メソッド
     11            '----------------------------------------------------------------
    1012
    11     ' アサート(コールスタックを表示)
    12     Static Sub Assert( condition As Boolean )
    13         base.Assert( condition )
    14     End Sub
     13            ' アサート(コールスタックを表示)
     14            Static Sub Assert( condition As Boolean )
     15                base.Assert( condition )
     16            End Sub
    1517
    16     ' アサート(メッセージ文字列を表示)
    17     Static Sub Assert( condition As Boolean, message As String )
    18         base.Assert( condition, message )
    19     End Sub
     18            ' アサート(メッセージ文字列を表示)
     19            Static Sub Assert( condition As Boolean, message As String )
     20                base.Assert( condition, message )
     21            End Sub
    2022
    21     ' アサート(メッセージ文字列と詳細文字列を表示)
    22     Static Sub Assert( condition As Boolean, message As String, detailMessage As String )
    23         base.Assert( condition, message, detailMessage )
    24     End Sub
     23            ' アサート(メッセージ文字列と詳細文字列を表示)
     24            Static Sub Assert( condition As Boolean, message As String, detailMessage As String )
     25                base.Assert( condition, message, detailMessage )
     26            End Sub
    2527
    2628
    27     ' インデントレベルを上げる
    28     Static Sub Indent()
    29         base.Indent()
    30     End Sub
     29            ' インデントレベルを上げる
     30            Static Sub Indent()
     31                base.Indent()
     32            End Sub
    3133
    32     ' インデントレベルを下げる
    33     Static Sub Unindent()
    34         base.Unindent()
    35     End Sub
     34            ' インデントレベルを下げる
     35            Static Sub Unindent()
     36                base.Unindent()
     37            End Sub
    3638
    37     ' 文字列を出力
    38     Static Sub Write( value As Object )
    39         base.Write( value )
    40     End Sub
    41     Static Sub Write( message As String )
    42         base.Write( message )
    43     End Sub
    44     Static Sub Write( value As Object, category As String )
    45         base.Write( value, category )
    46     End Sub
    47     Static Sub Write( message As String, category As String )
    48         base.Write( message, category )
    49     End Sub
     39            ' 文字列を出力
     40            Static Sub Write( value As Object )
     41                base.Write( value )
     42            End Sub
     43            Static Sub Write( message As String )
     44                base.Write( message )
     45            End Sub
     46            Static Sub Write( value As Object, category As String )
     47                base.Write( value, category )
     48            End Sub
     49            Static Sub Write( message As String, category As String )
     50                base.Write( message, category )
     51            End Sub
    5052
    51     ' 一行の文字列を出力
    52     Static Sub WriteLine( value As Object )
    53         base.WriteLine( value )
    54     End Sub
    55     Static Sub WriteLine( message As String )
    56         base.WriteLine( message )
    57     End Sub
    58     Static Sub WriteLine( value As Object, category As String )
    59         base.WriteLine( value, category )
    60     End Sub
    61     Static Sub WriteLine( message As String, category As String )
    62         base.WriteLine( message, category )
    63     End Sub
     53            ' 一行の文字列を出力
     54            Static Sub WriteLine( value As Object )
     55                base.WriteLine( value )
     56            End Sub
     57            Static Sub WriteLine( message As String )
     58                base.WriteLine( message )
     59            End Sub
     60            Static Sub WriteLine( value As Object, category As String )
     61                base.WriteLine( value, category )
     62            End Sub
     63            Static Sub WriteLine( message As String, category As String )
     64                base.WriteLine( message, category )
     65            End Sub
    6466
    65     ' 条件をもとに文字列を出力
    66     Static Sub WriteIf( condition As Boolean, value As Object )
    67         base.WriteIf( condition, value )
    68     End Sub
    69     Static Sub WriteIf( condition As Boolean, message As String )
    70         base.WriteIf( condition, message )
    71     End Sub
    72     Static Sub WriteIf( condition As Boolean, value As Object, category As String )
    73         base.WriteIf( condition, value, category )
    74     End Sub
    75     Static Sub WriteIf( condition As Boolean, message As String, category As String )
    76         base.WriteIf( condition, message, category )
    77     End Sub
     67            ' 条件をもとに文字列を出力
     68            Static Sub WriteIf( condition As Boolean, value As Object )
     69                base.WriteIf( condition, value )
     70            End Sub
     71            Static Sub WriteIf( condition As Boolean, message As String )
     72                base.WriteIf( condition, message )
     73            End Sub
     74            Static Sub WriteIf( condition As Boolean, value As Object, category As String )
     75                base.WriteIf( condition, value, category )
     76            End Sub
     77            Static Sub WriteIf( condition As Boolean, message As String, category As String )
     78                base.WriteIf( condition, message, category )
     79            End Sub
    7880
    79     ' 条件をもとに一行の文字列を出力
    80     Static Sub WriteLineIf( condition As Boolean, message As String )
    81         base.WriteLineIf( condition, message )
    82     End Sub
    83     Static Sub WriteLineIf( condition As Boolean, value As Object )
    84         base.WriteLineIf( condition, value )
    85     End Sub
    86     Static Sub WriteLineIf( condition As Boolean, value As Object, category As String )
    87         base.WriteLineIf( condition, value, category )
    88     End Sub
    89     Static Sub WriteLineIf( condition As Boolean, message As String, category As String )
    90         base.WriteLineIf( condition, message, category )
    91     End Sub
     81            ' 条件をもとに一行の文字列を出力
     82            Static Sub WriteLineIf( condition As Boolean, message As String )
     83                base.WriteLineIf( condition, message )
     84            End Sub
     85            Static Sub WriteLineIf( condition As Boolean, value As Object )
     86                base.WriteLineIf( condition, value )
     87            End Sub
     88            Static Sub WriteLineIf( condition As Boolean, value As Object, category As String )
     89                base.WriteLineIf( condition, value, category )
     90            End Sub
     91            Static Sub WriteLineIf( condition As Boolean, message As String, category As String )
     92                base.WriteLineIf( condition, message, category )
     93            End Sub
    9294
    9395
    94     '----------------------------------------------------------------
    95     ' パブリック プロパティ
    96     '----------------------------------------------------------------
     96            '----------------------------------------------------------------
     97            ' パブリック プロパティ
     98            '----------------------------------------------------------------
    9799
    98     ' IndentLevelプロパティ
    99     Static Function IndentLevel() As Long
    100         Return base.IndentLevel
    101     End Function
    102     Static Sub IndentLevel( indentLevel As Long )
    103         base.IndentLevel = indentLevel
    104     End Sub
     100            ' IndentLevelプロパティ
     101            Static Function IndentLevel() As Long
     102                Return base.IndentLevel
     103            End Function
     104            Static Sub IndentLevel( indentLevel As Long )
     105                base.IndentLevel = indentLevel
     106            End Sub
    105107
    106     ' IndentSizeプロパティ
    107     Static Function IndentSize() As Long
    108         Return base.IndentSize
    109     End Function
    110     Static Sub IndentSize( size As Long )
    111         base.IndentSize = size
    112     End Sub
     108            ' IndentSizeプロパティ
     109            Static Function IndentSize() As Long
     110                Return base.IndentSize
     111            End Function
     112            Static Sub IndentSize( size As Long )
     113                base.IndentSize = size
     114            End Sub
    113115
    114     ' Listenersプロパティ
    115     Static Function Listeners() As TraceListenerCollection
    116         Return base.Listeners
    117     End Function
     116            ' Listenersプロパティ
     117            Static Function Listeners() As TraceListenerCollection
     118                Return base.Listeners
     119            End Function
    118120
    119 End Class
     121        End Class
     122
     123    End Namespace
     124End Namespace
  • Include/Classes/System/Diagnostics/TraceListener.ab

    r147 r246  
     1Namespace System
     2    Namespace Diagnostics
    13
    2 ' リスナ
    3 Class TraceListener
    4     indentLevel As Long
    5     indentSize As Long
     4        ' リスナ
     5        Class TraceListener
     6            indentLevel As Long
     7            indentSize As Long
    68
    7 Protected
    8     Function GetIndentString() As String
    9         Dim i As Long
     9        Protected
     10            Function GetIndentString() As String
     11                Dim i As Long
    1012
    11         Dim IndentStr = ""
    12         For i = 0 To ELM( indentSize )
    13             IndentStr = IndentStr + " "
    14         Next
     13                Dim IndentStr = ""
     14                For i = 0 To ELM( indentSize )
     15                    IndentStr = IndentStr + " "
     16                Next
    1517
    16         Dim ResultStr = ""
    17         For i = 0 To ELM( indentLevel )
    18             ResultStr = ResultStr + IndentStr
    19         Next
     18                Dim ResultStr = ""
     19                For i = 0 To ELM( indentLevel )
     20                    ResultStr = ResultStr + IndentStr
     21                Next
    2022
    21         Return ResultStr
    22     End Function
     23                Return ResultStr
     24            End Function
    2325
    24 Public
    25     Sub TraceListener()
    26         indentLevel = 0
    27         indentSize = 4
    28     End Sub
     26        Public
     27            Sub TraceListener()
     28                indentLevel = 0
     29                indentSize = 4
     30            End Sub
    2931
    30     ' コピーコンストラクタ
    31     Sub TraceListener( ByRef listener As TraceListener )
    32         indentLevel = listener.indentLevel
    33         indentSize = listener.indentSize
    34     End Sub
     32            ' コピーコンストラクタ
     33            Sub TraceListener( ByRef listener As TraceListener )
     34                indentLevel = listener.indentLevel
     35                indentSize = listener.indentSize
     36            End Sub
    3537
    3638
    37     '----------------------------------------------------------------
    38     ' パブリック コンストラクタ
    39     '----------------------------------------------------------------
     39            '----------------------------------------------------------------
     40            ' パブリック コンストラクタ
     41            '----------------------------------------------------------------
    4042
    41     Virtual Sub Write( message As String )
    42         '派生クラスで実装 (基底では何もしない)
    43     End Sub
    44     Virtual Sub Write( value As Object )
    45         Write( value.ToString() )
    46     End Sub
    47     Virtual Sub Write( value As Object, category As String )
    48         Write( category + ": " + value.ToString() )
    49     End Sub
    50     Virtual Sub Write( message As String, category As String )
    51         Write( category + ": " + message )
    52     End Sub
     43            Virtual Sub Write( message As String )
     44                '派生クラスで実装 (基底では何もしない)
     45            End Sub
     46            Virtual Sub Write( value As Object )
     47                Write( value.ToString() )
     48            End Sub
     49            Virtual Sub Write( value As Object, category As String )
     50                Write( category + ": " + value.ToString() )
     51            End Sub
     52            Virtual Sub Write( message As String, category As String )
     53                Write( category + ": " + message )
     54            End Sub
    5355
    54     Virtual Sub WriteLine( message As String )
    55         '派生クラスで実装 (基底では何もしない)
    56     End Sub
    57     Virtual Sub WriteLine( value As Object )
    58         WriteLine( value.ToString() )
    59     End Sub
    60     Virtual Sub WriteLine( value As Object, category As String )
    61         WriteLine( category + ": " + value.ToString() )
    62     End Sub
    63     Virtual Sub WriteLine( message As String, category As String )
    64         WriteLine( category + ": " + message )
    65     End Sub
     56            Virtual Sub WriteLine( message As String )
     57                '派生クラスで実装 (基底では何もしない)
     58            End Sub
     59            Virtual Sub WriteLine( value As Object )
     60                WriteLine( value.ToString() )
     61            End Sub
     62            Virtual Sub WriteLine( value As Object, category As String )
     63                WriteLine( category + ": " + value.ToString() )
     64            End Sub
     65            Virtual Sub WriteLine( message As String, category As String )
     66                WriteLine( category + ": " + message )
     67            End Sub
    6668
    6769
    68     '----------------------------------------------------------------
    69     ' パブリック プロパティ
    70     '----------------------------------------------------------------
     70            '----------------------------------------------------------------
     71            ' パブリック プロパティ
     72            '----------------------------------------------------------------
    7173
    72     ' IndentLevelプロパティ
    73     Function IndentLevel() As Long
    74         Return indentLevel
    75     End Function
    76     Sub IndentLevel( indentLevel As Long )
    77         This.indentLevel = indentLevel
    78     End Sub
     74            ' IndentLevelプロパティ
     75            Function IndentLevel() As Long
     76                Return indentLevel
     77            End Function
     78            Sub IndentLevel( indentLevel As Long )
     79                This.indentLevel = indentLevel
     80            End Sub
    7981
    80     ' IndentSizeプロパティ
    81     Function IndentSize() As Long
    82         Return indentSize
    83     End Function
    84     Sub IndentSize( size As Long )
    85         indentSize = size
    86     End Sub
    87 End Class
     82            ' IndentSizeプロパティ
     83            Function IndentSize() As Long
     84                Return indentSize
     85            End Function
     86            Sub IndentSize( size As Long )
     87                indentSize = size
     88            End Sub
     89        End Class
    8890
    89 ' デフォルトリスナ(デバッガビューへの出力)
    90 Class DefaultTraceListener
    91     Inherits TraceListener
    92 Public
     91        ' デフォルトリスナ(デバッガビューへの出力)
     92        Class DefaultTraceListener
     93            Inherits TraceListener
     94        Public
    9395
    94     Override Sub Write( message As String )
    95         ' デバッグビューへ出力
    96         Dim tempStr = GetIndentString() + message
    97         OutputDebugString( tempStr )
     96            Override Sub Write( message As String )
     97                ' デバッグビューへ出力
     98                Dim tempStr = GetIndentString() + message
     99                OutputDebugString( tempStr )
    98100
    99         ' デバッグログへ書き込む
    100         ' TODO: 実装
    101     End Sub
     101                ' デバッグログへ書き込む
     102                ' TODO: 実装
     103            End Sub
    102104
    103     Override Sub WriteLine( message As String )
    104         Write( GetIndentString() + message + Ex"\r\n" )
    105     End Sub
    106 End Class
     105            Override Sub WriteLine( message As String )
     106                Write( GetIndentString() + message + Ex"\r\n" )
     107            End Sub
     108        End Class
     109
     110    End Namespace
     111End Namespace
  • Include/Classes/System/Diagnostics/TraceListenerCollection.ab

    r176 r246  
    1 ' リスナコレクション
    2 Class TraceListenerCollection
    3     pListeners As *TraceListener
    4     count As Long
    5 Public
     1Namespace System
     2    Namespace Diagnostics
    63
    7     Sub TraceListenerCollection()
    8         pListeners = _System_malloc( 1 )
    9     End Sub
    10     Sub ~TraceListenerCollection()
    11         _System_free( pListeners )
    12     End Sub
     4        ' リスナコレクション
     5        Class TraceListenerCollection
     6            pListeners As *TraceListener
     7            count As Long
     8        Public
    139
    14     '----------------------------------------------------------------
    15     ' パブリック メソッド
    16     '----------------------------------------------------------------
     10            Sub TraceListenerCollection()
     11                pListeners = _System_malloc( 1 )
     12            End Sub
     13            Sub ~TraceListenerCollection()
     14                _System_free( pListeners )
     15            End Sub
    1716
    18     ' リスナを追加
    19     Sub Add( listener As TraceListener )
    20         pListeners = _System_realloc( pListeners, ( count + 1 ) * SizeOf( LONG_PTR ) )
    21         pListeners[count] = listener
    22         count++
    23     End Sub
     17            '----------------------------------------------------------------
     18            ' パブリック メソッド
     19            '----------------------------------------------------------------
    2420
    25     ' 複数のリスナを追加
    26     Sub AddRange( listeners As TraceListenerCollection )
    27         ' TODO: 実装
    28     End Sub
     21            ' リスナを追加
     22            Sub Add( listener As TraceListener )
     23                pListeners = _System_realloc( pListeners, ( count + 1 ) * SizeOf( LONG_PTR ) )
     24                pListeners[count] = listener
     25                count++
     26            End Sub
    2927
    30     ' リストからすべてのリスナを削除
    31     Sub Clear()
    32         ' TODO: 実装
    33     End Sub
     28            ' 複数のリスナを追加
     29            Sub AddRange( listeners As TraceListenerCollection )
     30                ' TODO: 実装
     31            End Sub
    3432
    35     ' 指定したリスナのインデックスを取得
    36     Function IndexOf( listener As TraceListener )
    37         ' TODO: 実装
    38     End Function
     33            ' リストからすべてのリスナを削除
     34            Sub Clear()
     35                ' TODO: 実装
     36            End Sub
    3937
    40     ' リスナを挿入
    41     Sub Insert( index As Long, listener As TraceListener )
    42         ' TODO: 実装
    43     End Sub
     38            ' 指定したリスナのインデックスを取得
     39            Function IndexOf( listener As TraceListener )
     40                ' TODO: 実装
     41            End Function
    4442
    45     ' リスナを削除
    46     Function Remove( name As String )
    47         ' TODO: 実装
    48     End Function
    49     Function Remove( listener As TraceListener )
    50         ' TODO: 実装
    51     End Function
     43            ' リスナを挿入
     44            Sub Insert( index As Long, listener As TraceListener )
     45                ' TODO: 実装
     46            End Sub
     47
     48            ' リスナを削除
     49            Function Remove( name As String )
     50                ' TODO: 実装
     51            End Function
     52            Function Remove( listener As TraceListener )
     53                ' TODO: 実装
     54            End Function
    5255
    5356
    54     '----------------------------------------------------------------
    55     ' パブリック プロパティ
    56     '----------------------------------------------------------------
     57            '----------------------------------------------------------------
     58            ' パブリック プロパティ
     59            '----------------------------------------------------------------
    5760
    58     ' インデクサ ( Getter )
    59     Function Operator[] ( index As Long ) As TraceListener
    60         If index < 0 or count <= index Then
    61             ' TODO: エラー処理
    62             debug
    63         End If
     61            ' インデクサ ( Getter )
     62            Function Operator[] ( index As Long ) As TraceListener
     63                If index < 0 or count <= index Then
     64                    ' TODO: エラー処理
     65                    debug
     66                End If
    6467
    65         Return pListeners[index]
    66     End Function
     68                Return pListeners[index]
     69            End Function
    6770
    68     ' 保有するリスナの数を取得する
    69     Function Count() As Long
    70         Return count
    71     End Function
    72 End Class
     71            ' 保有するリスナの数を取得する
     72            Function Count() As Long
     73                Return count
     74            End Function
     75        End Class
     76
     77    End Namespace
     78End Namespace
  • Include/Classes/System/Diagnostics/base.ab

    r207 r246  
    1 
    2 Class _System_TraceBase
    3     indentLevel As Long
    4     indentSize As Long
    5 
    6 
    7     ' リスナ管理
    8     listeners As TraceListenerCollection
    9 
    10 Public
    11 
    12     ' コンストラクタ
    13     Sub _System_TraceBase()
    14         listeners = New TraceListenerCollection
    15         listeners.Add( New DefaultTraceListener() )
    16 
    17         indentLevel = 0
    18         indentSize = 4
    19     End Sub
    20 
    21     '----------------------------------------------------------------
    22     ' パブリック メソッド
    23     '----------------------------------------------------------------
    24 
    25     ' アサート(コールスタックを表示)
    26     Sub Assert( condition As Boolean )
    27         If condition = False then
    28             'TODO: コールスタックを表示
    29         End If
    30     End Sub
    31 
    32     ' アサート(メッセージ文字列を表示)
    33     Sub Assert( condition As Boolean, message As String )
    34         If condition = False then
    35             ' TODO: メッセージボックス形式での表示に対応
    36             WriteLine( message )
    37         End If
    38     End Sub
    39 
    40     ' アサート(メッセージ文字列と詳細文字列を表示)
    41     Sub Assert( condition As Boolean, message As String, detailMessage As String )
    42         If condition = False then
    43             ' TODO: メッセージボックス形式での表示に対応
    44             WriteLine( message )
    45         End If
    46     End Sub
    47 
    48 
    49     ' インデントレベルを上げる
    50     Sub Indent()
    51         IndentLevel = indentLevel + 1
    52     End Sub
    53 
    54     ' インデントレベルを下げる
    55     Sub Unindent()
    56         If indentLevel <= 0 Then
    57             indentLevel = 0
    58             Return
    59         End If
    60         IndentLevel = indentLevel - 1
    61     End Sub
    62 
    63     ' 文字列を出力
    64     Sub Write( value As Object )
    65         Dim i As Long
    66         For i = 0 To ELM( listeners.Count )
    67             Dim listener = listeners[i]
    68             listener.Write( value )
    69         Next
    70     End Sub
    71     Sub Write( message As String )
    72         Dim i As Long
    73         For i = 0 To ELM( listeners.Count )
    74             Dim listener = listeners[i]
    75             listener.Write( message )
    76         Next
    77     End Sub
    78     Sub Write( value As Object, category As String )
    79         Dim i As Long
    80         For i = 0 To ELM( listeners.Count )
    81             Dim listener = listeners[i]
    82             listener.Write( value, category )
    83         Next
    84     End Sub
    85     Sub Write( message As String, category As String )
    86         Dim i As Long
    87         For i = 0 To ELM( listeners.Count )
    88             Dim listener = listeners[i]
    89             listener.Write( message, category )
    90         Next
    91     End Sub
    92 
    93     ' 一行の文字列を出力
    94     Sub WriteLine( value As Object )
    95         Dim i As Long
    96         For i = 0 To ELM( listeners.Count )
    97             Dim listener = listeners[i]
    98             listener.WriteLine( value )
    99         Next
    100     End Sub
    101     Sub WriteLine( message As String )
    102         Dim i As Long
    103         For i = 0 To ELM( listeners.Count )
    104             Dim listener = listeners[i]
    105             listener.WriteLine( message )
    106         Next
    107     End Sub
    108     Sub WriteLine( value As Object, category As String )
    109         Dim i As Long
    110         For i = 0 To ELM( listeners.Count )
    111             Dim listener = listeners[i]
    112             listener.WriteLine( value, category )
    113         Next
    114     End Sub
    115     Sub WriteLine( message As String, category As String )
    116         Dim i As Long
    117         For i = 0 To ELM( listeners.Count )
    118             Dim listener = listeners[i]
    119             listener.WriteLine( message, category )
    120         Next
    121     End Sub
    122 
    123     ' 条件をもとに文字列を出力
    124     Sub WriteIf( condition As Boolean, value As Object )
    125         Dim i As Long
    126         For i = 0 To ELM( listeners.Count )
    127             Dim listener = listeners[i]
    128             listener.WriteIf( condition, value )
    129         Next
    130     End Sub
    131     Sub WriteIf( condition As Boolean, message As String )
    132         Dim i As Long
    133         For i = 0 To ELM( listeners.Count )
    134             Dim listener = listeners[i]
    135             listener.WriteIf( condition, message )
    136         Next
    137     End Sub
    138     Sub WriteIf( condition As Boolean, value As Object, category As String )
    139         Dim i As Long
    140         For i = 0 To ELM( listeners.Count )
    141             Dim listener = listeners[i]
    142             listener.WriteIf( condition, value, category )
    143         Next
    144     End Sub
    145     Sub WriteIf( condition As Boolean, message As String, category As String )
    146         Dim i As Long
    147         For i = 0 To ELM( listeners.Count )
    148             Dim listener = listeners[i]
    149             listener.WriteIf( condition, message, category )
    150         Next
    151     End Sub
    152 
    153     ' 条件をもとに一行の文字列を出力
    154     Sub WriteLineIf( condition As Boolean, value As Object )
    155         Dim i As Long
    156         For i = 0 To ELM( listeners.Count )
    157             Dim listener = listeners[i]
    158             listener.WriteLineIf( condition, value )
    159         Next
    160     End Sub
    161     Sub WriteLineIf( condition As Boolean, message As String )
    162         Dim i As Long
    163         For i = 0 To ELM( listeners.Count )
    164             Dim listener = listeners[i]
    165             listener.WriteLineIf( condition, message )
    166         Next
    167     End Sub
    168     Sub WriteLineIf( condition As Boolean, value As Object, category As String )
    169         Dim i As Long
    170         For i = 0 To ELM( listeners.Count )
    171             Dim listener = listeners[i]
    172             listener.WriteLineIf( condition, value, category )
    173         Next
    174     End Sub
    175     Sub WriteLineIf( condition As Boolean, message As String, category As String )
    176         Dim i As Long
    177         For i = 0 To ELM( listeners.Count )
    178             Dim listener = listeners[i]
    179             listener.WriteLineIf( condition, message, category )
    180         Next
    181     End Sub
    182 
    183 
    184     '----------------------------------------------------------------
    185     ' パブリック プロパティ
    186     '----------------------------------------------------------------
    187 
    188     ' IndentLevelプロパティ
    189     Function IndentLevel() As Long
    190         Return indentLevel
    191     End Function
    192     Sub IndentLevel( indentLevel As Long )
    193         This.indentLevel = indentLevel
    194 
    195         Dim i As Long
    196         For i = 0 To ELM( listeners.Count )
    197             Dim listener = listeners[i]
    198             listener.IndentLevel = indentLevel
    199         Next
    200     End Sub
    201 
    202     ' IndentSizeプロパティ
    203     Function IndentSize() As Long
    204         Return indentSize
    205     End Function
    206     Sub IndentSize( size As Long )
    207         indentSize = size
    208 
    209         Dim i As Long
    210         For i = 0 To ELM( listeners.Count )
    211             Dim listener = listeners[i]
    212             listener.IndentSize = indentSize
    213         Next
    214     End Sub
    215 
    216     ' Listenersプロパティ
    217     Function Listeners() As TraceListenerCollection
    218         Return listeners
    219     End Function
    220 
    221 End Class
    222 
     1Namespace System
     2    Namespace Diagnostics
     3
     4        Class _System_TraceBase
     5            indentLevel As Long
     6            indentSize As Long
     7
     8
     9            ' リスナ管理
     10            listeners As TraceListenerCollection
     11
     12        Public
     13
     14            ' コンストラクタ
     15            Sub _System_TraceBase()
     16                listeners = New TraceListenerCollection
     17                listeners.Add( New DefaultTraceListener() )
     18
     19                indentLevel = 0
     20                indentSize = 4
     21            End Sub
     22
     23            '----------------------------------------------------------------
     24            ' パブリック メソッド
     25            '----------------------------------------------------------------
     26
     27            ' アサート(コールスタックを表示)
     28            Sub Assert( condition As Boolean )
     29                If condition = False then
     30                    'TODO: コールスタックを表示
     31                End If
     32            End Sub
     33
     34            ' アサート(メッセージ文字列を表示)
     35            Sub Assert( condition As Boolean, message As String )
     36                If condition = False then
     37                    ' TODO: メッセージボックス形式での表示に対応
     38                    WriteLine( message )
     39                End If
     40            End Sub
     41
     42            ' アサート(メッセージ文字列と詳細文字列を表示)
     43            Sub Assert( condition As Boolean, message As String, detailMessage As String )
     44                If condition = False then
     45                    ' TODO: メッセージボックス形式での表示に対応
     46                    WriteLine( message )
     47                End If
     48            End Sub
     49
     50
     51            ' インデントレベルを上げる
     52            Sub Indent()
     53                IndentLevel = indentLevel + 1
     54            End Sub
     55
     56            ' インデントレベルを下げる
     57            Sub Unindent()
     58                If indentLevel <= 0 Then
     59                    indentLevel = 0
     60                    Return
     61                End If
     62                IndentLevel = indentLevel - 1
     63            End Sub
     64
     65            ' 文字列を出力
     66            Sub Write( value As Object )
     67                Dim i As Long
     68                For i = 0 To ELM( listeners.Count )
     69                    Dim listener = listeners[i]
     70                    listener.Write( value )
     71                Next
     72            End Sub
     73            Sub Write( message As String )
     74                Dim i As Long
     75                For i = 0 To ELM( listeners.Count )
     76                    Dim listener = listeners[i]
     77                    listener.Write( message )
     78                Next
     79            End Sub
     80            Sub Write( value As Object, category As String )
     81                Dim i As Long
     82                For i = 0 To ELM( listeners.Count )
     83                    Dim listener = listeners[i]
     84                    listener.Write( value, category )
     85                Next
     86            End Sub
     87            Sub Write( message As String, category As String )
     88                Dim i As Long
     89                For i = 0 To ELM( listeners.Count )
     90                    Dim listener = listeners[i]
     91                    listener.Write( message, category )
     92                Next
     93            End Sub
     94
     95            ' 一行の文字列を出力
     96            Sub WriteLine( value As Object )
     97                Dim i As Long
     98                For i = 0 To ELM( listeners.Count )
     99                    Dim listener = listeners[i]
     100                    listener.WriteLine( value )
     101                Next
     102            End Sub
     103            Sub WriteLine( message As String )
     104                Dim i As Long
     105                For i = 0 To ELM( listeners.Count )
     106                    Dim listener = listeners[i]
     107                    listener.WriteLine( message )
     108                Next
     109            End Sub
     110            Sub WriteLine( value As Object, category As String )
     111                Dim i As Long
     112                For i = 0 To ELM( listeners.Count )
     113                    Dim listener = listeners[i]
     114                    listener.WriteLine( value, category )
     115                Next
     116            End Sub
     117            Sub WriteLine( message As String, category As String )
     118                Dim i As Long
     119                For i = 0 To ELM( listeners.Count )
     120                    Dim listener = listeners[i]
     121                    listener.WriteLine( message, category )
     122                Next
     123            End Sub
     124
     125            ' 条件をもとに文字列を出力
     126            Sub WriteIf( condition As Boolean, value As Object )
     127                Dim i As Long
     128                For i = 0 To ELM( listeners.Count )
     129                    Dim listener = listeners[i]
     130                    listener.WriteIf( condition, value )
     131                Next
     132            End Sub
     133            Sub WriteIf( condition As Boolean, message As String )
     134                Dim i As Long
     135                For i = 0 To ELM( listeners.Count )
     136                    Dim listener = listeners[i]
     137                    listener.WriteIf( condition, message )
     138                Next
     139            End Sub
     140            Sub WriteIf( condition As Boolean, value As Object, category As String )
     141                Dim i As Long
     142                For i = 0 To ELM( listeners.Count )
     143                    Dim listener = listeners[i]
     144                    listener.WriteIf( condition, value, category )
     145                Next
     146            End Sub
     147            Sub WriteIf( condition As Boolean, message As String, category As String )
     148                Dim i As Long
     149                For i = 0 To ELM( listeners.Count )
     150                    Dim listener = listeners[i]
     151                    listener.WriteIf( condition, message, category )
     152                Next
     153            End Sub
     154
     155            ' 条件をもとに一行の文字列を出力
     156            Sub WriteLineIf( condition As Boolean, value As Object )
     157                Dim i As Long
     158                For i = 0 To ELM( listeners.Count )
     159                    Dim listener = listeners[i]
     160                    listener.WriteLineIf( condition, value )
     161                Next
     162            End Sub
     163            Sub WriteLineIf( condition As Boolean, message As String )
     164                Dim i As Long
     165                For i = 0 To ELM( listeners.Count )
     166                    Dim listener = listeners[i]
     167                    listener.WriteLineIf( condition, message )
     168                Next
     169            End Sub
     170            Sub WriteLineIf( condition As Boolean, value As Object, category As String )
     171                Dim i As Long
     172                For i = 0 To ELM( listeners.Count )
     173                    Dim listener = listeners[i]
     174                    listener.WriteLineIf( condition, value, category )
     175                Next
     176            End Sub
     177            Sub WriteLineIf( condition As Boolean, message As String, category As String )
     178                Dim i As Long
     179                For i = 0 To ELM( listeners.Count )
     180                    Dim listener = listeners[i]
     181                    listener.WriteLineIf( condition, message, category )
     182                Next
     183            End Sub
     184
     185
     186            '----------------------------------------------------------------
     187            ' パブリック プロパティ
     188            '----------------------------------------------------------------
     189
     190            ' IndentLevelプロパティ
     191            Function IndentLevel() As Long
     192                Return indentLevel
     193            End Function
     194            Sub IndentLevel( indentLevel As Long )
     195                This.indentLevel = indentLevel
     196
     197                Dim i As Long
     198                For i = 0 To ELM( listeners.Count )
     199                    Dim listener = listeners[i]
     200                    listener.IndentLevel = indentLevel
     201                Next
     202            End Sub
     203
     204            ' IndentSizeプロパティ
     205            Function IndentSize() As Long
     206                Return indentSize
     207            End Function
     208            Sub IndentSize( size As Long )
     209                indentSize = size
     210
     211                Dim i As Long
     212                For i = 0 To ELM( listeners.Count )
     213                    Dim listener = listeners[i]
     214                    listener.IndentSize = indentSize
     215                Next
     216            End Sub
     217
     218            ' Listenersプロパティ
     219            Function Listeners() As TraceListenerCollection
     220                Return listeners
     221            End Function
     222
     223        End Class
     224
     225    End Namespace
     226End Namespace
Note: See TracChangeset for help on using the changeset viewer.