diff --git a/data/resources/StringResources.de.resx b/data/resources/StringResources.de.resx
index d58b0a366b8..96bdeadaedc 100644
--- a/data/resources/StringResources.de.resx
+++ b/data/resources/StringResources.de.resx
@@ -294,7 +294,7 @@ Laden Sie ein AddIn aus dem Internet herunter, klicken Sie auf "AddIn installier
{1}
-Sie werden nicht mehr funktionieren nachdem dieses AddIn deaktiviert wurde! Sind Sie sicher, dass Sie fortfahren möchten?
+Sie werden nicht mehr funktionieren, nachdem dieses AddIn deaktiviert wurde! Sind Sie sicher, dass Sie fortfahren möchten?
Das Paket "{0}" benötigt noch mindestens ein zusätzliches Paket:
@@ -332,6 +332,9 @@ Wenn Sie den Lizenzbedingungen nicht zustimmen, klicken Sie auf "Ablehnen".
Hinzufügen
+
+ Automatisch nach Updates suchen
+
Nach unten
@@ -350,6 +353,9 @@ Wenn Sie den Lizenzbedingungen nicht zustimmen, klicken Sie auf "Ablehnen".
AddIns
+
+ Allgemein
+
Quellen
@@ -1201,9 +1207,7 @@ Ein Ausführungskommando kann in den Projektoptionen eingestellt werden.
Ink
- Sie protokollieren keine Ereignisse.
-
-Wählen Sie ein Objekt oder ein Ereignis im Objekte-Panel und klicken Sie mit der rechten Maustaste oder benutzen Sie das "Aktion"-Menü um mit dem Protokollieren von Ereignissen zu beginnen.
+ Sie protokollieren keine Ereignisse. Wählen Sie ein Objekt oder ein Ereignis im Objekte-Panel und klicken Sie mit der rechten Maustaste oder benutzen Sie das "Aktion"-Menü um mit dem Protokollieren von Ereignissen zu beginnen.
Parameter
@@ -1534,6 +1538,30 @@ Um ActiveX/COM-Objekte zu generieren, ziehen sie eine Klasse aus einer Typbiblio
Code-Qualitätsanalyse
+
+ Code automatisch formatieren
+
+
+ (Standard)
+
+
+ (Global)
+
+
+ Keine Formatierungsvoreinstellung ausgewählt!
+
+
+ Sind Sie sicher, dass Sie alle Formatierungseinstellungen zurücksetzen wollen?
+
+
+ (Projekt)
+
+
+ Zurücksetzen auf:
+
+
+ (Projektmappe)
+
Füge Reference zu Methode ein; drücke Tab oder Enter zweimal, um eine neue Methode anzulegen.
@@ -1650,6 +1678,9 @@ Beispiele: "120", "MainClass", "Main.cs, 120".
Kursiv
+
+ Unterstrichen
+
Hervorhebungsfarben exportieren
@@ -1954,6 +1985,12 @@ Wollen Sie die neue Datei zum Projekt ${CurrentProjectName} hinzufügen?
Cache leeren
+
+ Den gewählten Code completion-Eintrag bei Eingabe der folgenden Zeichen einfügen:
+
+
+ Den gewählten Code completion-Eintrag nur bei <Tab> oder <Enter> einfügen.
+
Zeige Code Completion, wenn ein Buchstabe eingegeben wird
@@ -1975,6 +2012,18 @@ Wollen Sie die neue Datei zum Projekt ${CurrentProjectName} hinzufügen?
Speichere
+
+ Tooltip-Einstellungen
+
+
+ Links in Tooltips führen zur
+
+
+ Definition im Code
+
+
+ Dokumentation (falls verfügbar)
+
Häufig benutzte Einträge bevorzugt markieren
@@ -2029,12 +2078,24 @@ Wollen Sie die neue Datei zum Projekt ${CurrentProjectName} hinzufügen?
Auf erster Anweisung des Programmes anhalten.
+
+ Ausnahmen auswählen
+
Decompiler aktivieren
Bearbeiten und Fortfahren (EnC) aktivieren
+
+ Voller Name der Ausnahme
+
+
+ Unterbrechen bei
+
+
+ Wählen Sie Ausnahmen aus, bei denen der Debugger anhalten soll
+
Ausnahmen
@@ -2347,6 +2408,9 @@ Wollen Sie die neue Datei zum Projekt ${CurrentProjectName} hinzufügen?
&Passende Klammer markieren
+
+ Aktuelle Zeile hervorheben
+
Symbole hervorheben
@@ -2608,6 +2672,9 @@ Wollen Sie die neue Datei zum Projekt ${CurrentProjectName} hinzufügen?
Standardwerte für VB Optionen:
+
+ Codeformatierung
+
Konfiguration
@@ -3314,6 +3381,9 @@ Bitte einen anderen Dateinamen wählen.
Nicht abgedeckter Code
+
+ Code teilweise abgedeckt
+
Spalte
@@ -3586,6 +3656,9 @@ Bitte stellen Sie den Pfad zur NAnt-Anwendung in den SharpDevelop-Optionen ein.<
Konnte Typ '{0}' nicht finden. Fehlt eine Assembly-Referenz?
+
+ Es konnte keine Typ- oder Member-Definition an der Cursor-Position gefunden werden.
+
Das gewählte Element ist keine Klasse oder überschreibbares Mitglied, daher können keine Symbole angezeigt werden.
@@ -4305,6 +4378,9 @@ Grund: Der Wert zu dem zurückgesetzt werden soll ist ungültig weil sich eine a
Die Projektmappe wurde extern geändert.
+
+ Formatierungsoptionen der Projektmappe
+
Neue &Compilerversion:
@@ -5026,6 +5102,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Assembly aus GAC öffnen...
+
+ Im Klassenbrowser anzeigen
+
Suche nach Klassenname
@@ -5044,6 +5123,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Zeilenumbruch aktivieren/deaktivieren
+
+ Ausdruck zur Überwachung hinzufügen
+
Haltepunkte
@@ -5146,6 +5228,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Unterbrechen
+
+ Unterbrechen bei behandelter ${ExceptionName}
+
Fortsetzen
@@ -5689,6 +5774,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Referenz hinzufügen
+
+ Service-Referenz hinzufügen
+
Web Referenz hinzufügen
@@ -6086,6 +6174,9 @@ Bitte einen anderen verwenden.
Basisklassen von ${Name}
+
+ Basis-Member von ${Name}
+
Die Operation kann nicht ausgeführt werden, weil Ihr Sourcecode Fehler enthält:
@@ -6098,6 +6189,12 @@ Bitte einen anderen verwenden.
Klassen, die von ${Name} erben
+
+ Aus Zwischenablagering
+
+
+ Der Zwischenablagering ist leer
+
In automatische Eigenschaft konvertieren
@@ -6128,6 +6225,9 @@ Bitte einen anderen verwenden.
Finde Basisklassen
+
+ Finde Basissymbole
+
Abgeleitete Typen finden
@@ -6234,7 +6334,7 @@ Bitte einen anderen verwenden.
Alle bekannten Projektformate
- Diese Version von SharpDevelop kann keine Projekte, die mit Visual Studio .NET 2003 (oder früher) erstellt wurden.
+ Diese Version von SharpDevelop kann keine Projekte laden, die mit Visual Studio .NET 2003 (oder früher) erstellt wurden.
Versuchen Sie das Projekt mit SharpDevelop 3.2 zu konvertieren, oder erstellen Sie ein neues Projekt und fügen Sie ihm die existierenden Quellcodedateien hinzu.
@@ -6563,6 +6663,9 @@ SharpDevelop 2 kompiliert Ressourcendateien anders: der Ressourcenname ist nicht
Projektmappe öffnen
+
+ Aus der Liste der kürzlich verwendeten Projekte entfernen
+
Startseite
@@ -6575,6 +6678,12 @@ SharpDevelop 2 kompiliert Ressourcendateien anders: der Ressourcenname ist nicht
Z ${Line} S ${Column} Zei ${Character}
+
+ Lg ${Rows} * ${Cols} (${Total})
+
+
+ Lg ${Length}
+
Sonstiges
diff --git a/data/resources/StringResources.es-mx.resx b/data/resources/StringResources.es-mx.resx
index 09e174de1dc..39e6af912cd 100644
--- a/data/resources/StringResources.es-mx.resx
+++ b/data/resources/StringResources.es-mx.resx
@@ -1987,6 +1987,12 @@ Ejemplo: "120", "MainClass", "Main.cs, 120".
Borrar caché
+
+ Inserte entrada de autocompletado de código seleccionado escribiendo los siguientes caracteres:
+
+
+ Inserte solamente entrada de autocompletado de código seleccionado escribiendo <Tab> o <Enter>.
+
Mostrar lista de completado después de escribir un carácter
@@ -2008,6 +2014,9 @@ Ejemplo: "120", "MainClass", "Main.cs, 120".
Guardar
+
+ Preferencias de Tooltip
+
Enlaces en tooltips deben ir en
@@ -3636,6 +3645,9 @@ Por favor configure la ubicación del archivo ejecutable de NAnt en las opciones
No se pudo encontrar el tipo '{0}'.¿Falta una referencia a un ensamblado?
+
+ No se pudo encontrar una definición de tipo o de miembro en la posición del cursor.
+
El elemento seleccionado no es una clase o miembro sobrescribible, así que no se puede mostrar ningún símbolo derivado.
@@ -6140,6 +6152,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Buscar clases base de ${Name}
+
+ Miembros base de ${Name}
+
La operación no puede ser realizada debido a que su código fuente contiene errores:
@@ -6188,6 +6203,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Buscar clases base
+
+ Buscar símbolos base
+
Buscar clases &derivadas
diff --git a/data/resources/StringResources.es.resx b/data/resources/StringResources.es.resx
index dee824e910c..ec64f7058f8 100644
--- a/data/resources/StringResources.es.resx
+++ b/data/resources/StringResources.es.resx
@@ -1984,6 +1984,12 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib
Limpiar caché
+
+ Inserte la entrada de autocompletado de código seleccionada escribiendo los siguientes caracteres:
+
+
+ Inserte solamente la entrada de autocompletado de código seleccionado escribiendo <Tab> o <Enter>
+
Mostrar lista de completado después de escribir un carácter
@@ -2005,6 +2011,9 @@ Para crear/manipular un objeto ActiveX/COM, arrastre una clase de un Control/Bib
Guardar
+
+ Preferencias de Tooltip
+
Enlaces en tooltips deben ir a
@@ -3637,6 +3646,9 @@ Por favor configure la ubicación del archivo ejecutable de NAnt en las opciones
No se pudo encontrar el tipo '{0}'.¿Falta una referencia a un ensamblado?
+
+ No se pudo encontrar definición de tipo o de miembro en la posición del cursor.
+
El elemento seleccionado no es una clase o miembro sobrescribible, así que no se puede mostrar ningún símbolo derivado.
@@ -6146,6 +6158,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Clases base de ${Name}
+
+ Miembros base de ${Name}
+
La operación no puede ser realizada debido a que su código fuente contiene errores:
@@ -6194,6 +6209,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Buscar clases base
+
+ Buscar símbolos base
+
Encontrar clases &derivadas
diff --git a/data/resources/StringResources.jp.resx b/data/resources/StringResources.jp.resx
new file mode 100644
index 00000000000..5ae55b59a12
--- /dev/null
+++ b/data/resources/StringResources.jp.resx
@@ -0,0 +1,5102 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ このリソースは使われません。改行\nのテスト目的です。(この日本語翻訳について要望などありましたらSharpDevelop-jpまでお願いします)
+
+
+ アバウト
+
+
+ アンインストールの中止
+
+
+ インストールの中止
+
+
+ アップデートの中止
+
+
+ 無効
+
+
+ 有効
+
+
+ インストール
+
+
+ アンインストール
+
+
+ アップデート
+
+
+ このアドインには依存するものが見つかりません。このアドインをインストールして有効にしてください。
+
+
+ 無効
+
+
+ アドインはSharpDevelopの再起動後に有効になります
+
+
+ アドインはSharpDevelopの再起動後にインストールされます
+
+
+ このアドインは2度インストールされました。1つをアンインストールしてください
+
+
+ アドインマネージャで利用するために、アドインは<識別子>を持たなければなりません
+
+
+ アドインをSharpDevelopの再起動後に削除します
+
+
+ アドインをSharpDevelopの再起動後にアップデートします
+
+
+ アドインをSharpDevelopの再起動後に無効にします
+
+
+ アドインマネジャーは無効にできません。アドインを再度有効にするのに必要です!
+
+
+ アドインを${ProductName}ディレクトリにインストールできません。インストール前に自動的に設定されます
+
+
+ 選択したアドインのアンインストールを中断します。
+
+
+ 選択したアドインのインストールを中断します。
+
+
+ 選択したアドインのアップデートを中断します。
+
+
+ 選択したアドインを無効
+
+
+ 選択したアドインを有効
+
+
+ 矛盾した選択です。同じ状態のアドインのみ選択してください
+
+
+ アドイン インストール パッケージ
+
+
+ SharpDevelop アドイン|*.addin;*.sdaddin|すべてのファイル|*.*
+
+
+ アドインのインストール(&I)
+
+
+ アドインがインストールされていません。インターネットからアドインをダウンロードし、「アドインのインストール」をクリックして、ダウンロードしたファイルを選択すれば、インストールできます。
+
+
+ Webサイトを開く
+
+
+ オプション
+
+
+ アドイン被依存 :
+
+
+ 必要な依存関係 :
+
+
+ プレインストールのアドインを表示
+
+
+ アドインマネージャ
+
+
+ 不明なファイル形式
+
+
+ 圧縮ファイルからインストール...
+
+
+ レポジトリ :
+
+
+ 検索 :
+
+
+ プレインストールのアドインを表示
+
+
+ リリース前バージョンを表示
+
+
+ アドインマネジャーはアンインストールできません。アドインを再インストールするのに必要です!
+
+
+ SharpDevelop アドイン レポジトリ
+
+
+ 作成 :
+
+
+ 依存関係 :
+
+
+ ダウンロード :
+
+
+ ファイル名 :
+
+
+ インストール済みバージョン :
+
+
+ 最終更新 :
+
+
+ 詳細
+
+
+ 新バージョン :
+
+
+ 評価 :
+
+
+ クラスダイアグラムを表示
+
+
+ ??????
+
+
+ ????????????????
+
+
+ Microsoft????????
+
+
+ ???????????????????????????????????????????????????????
+
+
+ ??????
+
+
+ ????????
+
+
+ ????????????
+
+
+ 行当たりのバイト数
+
+
+ ??
+
+
+ ???
+
+
+ ?????
+
+
+ ??
+
+
+ 16??
+
+
+ ?????????
+
+
+ ??
+
+
+ ?????
+
+
+ URL入力
+
+
+ 進む
+
+
+ ??????
+
+
+ ??
+
+
+ 新しいウィンドウ
+
+
+ 検索
+
+
+ ??
+
+
+ ????
+
+
+ ??
+
+
+ ?????????
+
+
+ {0} ????
+
+
+ SharpDevelop??????????????
+
+
+ ??????????????????????????????????????????????????????????????????
+
+
+
+ ???????????????????...
+
+
+ ??????...
+
+
+ COM??????????????????????????????????????!
+
+
+ ??????
+
+
+ .NET????????????????
+
+
+ ????????????????
+
+
+ ????????????????
+
+
+ ?????????
+
+
+ ????????????????
+
+
+ ???????????????????
+????????????????????????????
+
+
+
+ ????:
+
+
+ ?????:
+
+
+ ?????????
+
+
+ ???????/???
+
+
+ ??????????
+
+
+ CPU????:
+
+
+ ?????
+
+
+ ???????
+
+
+ ?????
+
+
+ ?????????
+
+
+ % ?????
+
+
+ ???? / ????
+
+
+ ????(??)
+
+
+ ????(??) / ????
+
+
+ ??:
+
+
+ ???20
+
+
+ 検索...
+
+
+ ?????????continue???????????????????????????????????????????
+
+
+ ?????????goto?????????????????????????????????????????
+
+
+ {0}????????????????????????
+
+
+ ??????????
+
+
+ ?????????
+
+
+ ??
+
+
+ Equals()?GetHashCode()????????
+
+
+ ???????? {0} ???
+
+
+ ??????????????
+
+
+ ToString()??????????????
+
+
+ ?????????: {0}
+
+
+ ????????
+
+
+ Subversion???????'{0}'????????/????????????????
+
+
+ Subversion???????'{0}'????????/???????????????
+
+
+ ???????
+
+
+ ??????
+
+
+ ?????????
+
+
+ ????
+
+
+ ?????
+
+
+ ???????????
+
+
+ ??????????????(&A)
+
+
+ Subversion?????
+
+
+ ???
+
+
+ ????????????????????????????
+
+
+ ?????????
+
+
+ ????????
+
+
+ ??????
+
+
+ ????????????????????????????????????
+??????????????????????????????
+
+
+ ?????????TortoiseSVN???????????????????
+
+
+ ??????
+
+
+ Update to revision
+
+
+ ????????????! ??SharpDevelop?????????????????
+
+
+ ????? - ?????????????????
+
+
+ ???SharpDevelop??????????????????
+
+
+ ???????????????????SharpDevelop????????????????????????????????????????
+SharpDevelop???????????????????????
+
+
+ ???????????
+
+
+ ?????????
+
+
+ ???????????????
+
+
+ ?????/?????
+
+
+ ??????????????????????????????????????????????????
+
+
+ <???????????>
+
+
+ ???????:
+
+
+ XML?????????:
+
+
+ ????????:
+
+
+ ?????????????
+
+
+ ??????????
+
+
+ ???${encoding}???????????????????????????
+
+
+ プロジェクトは実行可能コマンドではなくdllとして定義されます。プロジェクトオプションで実行可能コマンドとして指定することが出来ます。
+
+
+ 説明
+
+
+ ファイル名
+
+
+ ?????
+
+
+ ??????????(&O)
+
+
+ ???????????(&V)
+
+
+ ???????????(&T)
+
+
+ ??????(&E)
+
+
+ ???????????(&P)
+
+
+ TypeLib???
+
+
+ ?????????
+
+
+ ????{0}?????????
+
+
+ ????
+
+
+ ???? for
+
+
+ ????
+
+
+ ??????????????????
+
+
+ ???
+
+
+ ????????
+
+
+ COM????????
+
+
+ ???????????????????OK??????????????????????????????????????????
+
+
+ ??????
+
+
+ ????????????????
+
+
+ ??????
+
+
+ ????COM????????
+
+
+ ???
+
+
+ ??????
+
+
+ ???(&C)
+
+
+ ???????????
+
+
+ ??
+
+
+ ???????(&S)
+
+
+ ??
+
+
+ ????:
+
+
+ ??
+
+
+ ?????
+
+
+ ???
+
+
+ ???
+
+
+ ???????
+
+
+ {0} ???????????????????;???????????????
+
+
+ ?????
+
+
+ ?????:
+
+
+ ????
+
+
+ ???????????
+
+
+ ????????
+
+
+ ????COM????????
+
+
+ ????COM???????????
+
+
+ ???
+
+
+ GAC??????
+
+
+ ???????ActiveX/COM????????????????
+
+???????????????COM?????????????????????????????????????????????????
+
+ActiveX/COM????????????COM????????????????
+
+???????????????????????????????????
+
+ ActiveX/COM?????????/????????????????????????????????????????/???????????????
+
+
+ ????????
+
+
+ ????
+
+
+ ?????????? ??????
+
+
+ ???????
+
+
+ ???????(&M)
+
+
+ ??????(&I)
+
+
+ ??
+
+
+ ??
+
+
+ ?????(&A)
+
+
+ ActiveX????
+
+
+ ??????(&D)...
+
+
+ ?????(&O)
+
+
+ ???(&P)...
+
+
+ ?????(&T)...
+
+
+ ???????(&T)...
+
+
+ ????
+
+
+ 16 ?????
+
+
+ ?????????
+
+
+ ????????
+
+
+ ?????
+
+
+ ??????
+
+
+ ????
+
+
+ ????????????????????
+
+
+ ?????
+
+
+ ????????
+
+
+ COM????????????????????????
+
+
+ {0}???????????????????
+
+
+ ???????????????????
+
+
+ ??????????????????????????????
+
+
+ ?????
+
+
+ ????????(&F)
+
+
+ ????????(&S)
+
+
+ ???????
+
+
+ ??
+
+
+ ??????????????????????????????????????????
+
+
+ ??????????????????????????????????(????????????)?????????????????????
+
+
+ ???????
+
+
+ ???????????????;?????????????????????????
+
+
+ ?????????????
+
+
+ ?????????????
+
+
+ SharpDevelop????????
+
+
+ ?????
+
+
+ ???
+
+
+ バージョン情報
+
+
+ ???(&C)
+
+
+ バージョン
+
+
+ ?????????
+
+
+ ???????????
+
+
+ すべて破棄(&D)
+
+
+ ?????(&A)
+
+
+ 保存(&S)
+
+
+ ????????????
+
+
+ ??????????????????
+
+
+ ??? '{0}' ??????
+
+
+ ?????????(&S):
+
+
+ ??????????????????(&C)
+
+
+ ???????????
+
+
+ ?????????????????
+
+
+ ????????????
+
+
+ ??
+
+
+ ????
+
+
+ ???????????????
+????????????????????????
+?:"120", "MainClass", "Main.cs, 120".
+
+
+ 背景色
+
+
+ 太字
+
+
+ ???
+
+
+ 斜体
+
+
+ ?
+
+
+ ???????
+
+
+ ???????????????????????????????????????????????
+???????????????${CurrentProjectName}?????????
+
+
+ カテゴリ(&C):
+
+
+ 新しいファイル
+
+
+ ファイル名(&F)
+
+
+ プロパティを入力してください
+
+
+ ファイルを作成する前にプロパティを指定してください。
+
+
+ テンプレート(&T):
+
+
+ ??????????????????(&D)
+
+
+ 新しいプロジェクト
+
+
+ 場所(&L):
+
+
+ 名前(&N):
+
+
+ ??????????????????:
+
+
+ ????(&C):
+
+
+ ??????????:
+
+
+ ??????(&A)
+
+
+ ??(&F)
+
+
+ ??
+
+
+ ????(&F)
+
+
+ ?????:
+
+
+ ??????????(&S)
+
+
+ ??????????????(&T)
+
+
+ ?????????????
+
+
+ ?????????
+
+
+ ?????
+
+
+ ?????? '{0}' ???????
+
+
+ ??????????
+
+
+ ????????????
+
+
+ すべてをマーク
+
+
+ ????????????(&C)
+
+
+ すべて置換(&A)
+
+
+ 置換(&R)
+
+
+ 置換
+
+
+ 置換後の文字列:
+
+
+ 検索対象:
+
+
+ ????
+
+
+ ?????
+
+
+ ワイルドカード
+
+
+ 指定されたテキストは見つかりませんでした。
+
+
+ ?????
+
+
+ オプション:
+
+
+ ?????????????????????
+
+
+ ????????(&M):
+
+
+ ??????(&T):
+
+
+ ???????
+
+
+ ??????????(&D)
+
+
+ ??
+
+
+ 説明(&D)
+
+
+ ?????????
+
+
+ テンプレート(&T)
+
+
+ ??(&X)
+
+
+ グループを削除(&M)
+
+
+ ??????
+
+
+ コードテンプレート
+
+
+ ??
+
+
+ ??(&A)
+
+
+ コマンド(&C)
+
+
+ 引数のプロンプト(&P)
+
+
+ ?????????????(&C)
+
+
+ コンバインファイル名
+
+
+ カレント列
+
+
+ ?????
+
+
+ ???????
+
+
+ ??????????(&I)
+
+
+ アイテムパス
+
+
+ ターゲットパス
+
+
+ アイテム拡張子
+
+
+ ?????????
+
+
+ ????????????(&P)
+
+
+ プロジェクトファイル名
+
+
+ #Develop?????????????
+
+
+ ターゲットディレクトリ(&T)
+
+
+ ターゲット拡張子
+
+
+ ???
+
+
+ ????(&T)
+
+
+ ???(&T)
+
+
+ ??????????????(&O)
+
+
+ ????????(&W)
+
+
+ 外部ツール
+
+
+ ??????????
+
+
+ ????????????????????????????????????????
+
+
+ ??????????????????????????
+
+
+ ??
+
+
+ ??
+
+
+ ????????????????
+
+
+ ?????????????????????
+
+
+ メンバの間に空行を挿入(&I)
+
+
+ ???????
+
+
+ ???????????
+
+
+ else????????????(&E)
+
+
+ ??????????(&A)
+
+
+ ??????????????(&D)
+
+
+ ?????????????(&S)
+
+
+ ?????
+
+
+ ?????????(&U)
+
+
+ コーディング
+
+
+ ??????
+
+
+ ???????????????????????
+
+
+ ?????????????????
+
+
+ ????
+
+
+ ????(&H)
+
+
+ ??(&L)
+
+
+ ????????
+
+
+ 全般
+
+
+ ???????????(&A)
+
+
+ ?????????????????(&E)
+
+
+ ????????????(&D)
+
+
+ ????
+
+
+ ????????????(&L)
+
+
+ 読み込み/保存
+
+
+ ??
+
+
+ Unix
+
+
+ Windows
+
+
+ ????????
+
+
+ ??????
+
+
+ ??????????????????????
+
+
+ ??????????????
+
+
+ ???????????????
+
+
+ ??????????????
+
+
+ ???:
+
+
+ ??????????????
+
+
+ ???UI?????:
+
+
+ ????????????????????????.
+
+
+ UI用言語設定
+
+
+ 好みの外観を選択してください(&A):
+
+
+ ?????????????????????(&E)
+
+
+ ??????????(&S)
+
+
+ ????????(&T)
+
+
+ ??????????????????(Office 2003?)???
+
+
+ 表示スタイル
+
+
+ スタイル
+
+
+ コメントタグ
+
+
+ 名前(&N)
+
+
+ タスクリスト
+
+
+ トークンリスト(&T)
+
+
+ ??
+
+
+ EOL???????????(&C)
+
+
+ タブをスペースに変換(&O)
+
+
+ Ctrl+???????????????
+
+
+ ??????????(&U)
+
+
+ ???????????????????
+
+
+ 文字入力中はマウスカーソルを隠す(&H)
+
+
+ インデント(&N)
+
+
+ インデントサイズ(&I)
+
+
+ ??
+
+
+ なし
+
+
+ スマート
+
+
+ ??????????(&M)
+
+
+ ??
+
+
+ 動作
+
+
+ ??
+
+
+ タブ
+
+
+ ?????(&T)
+
+
+ ???????????(&A)
+
+
+ ???????????(&R)
+
+
+ ????????????
+
+
+ ?????????(&C)
+
+
+ ?????????????(&D)
+
+
+ ????????????(&F)
+
+
+ ????
+
+
+ ????????????
+
+
+ ????????(&E):
+
+
+ サイズ:
+
+
+ ????
+
+
+ マウスホイールでズーム
+
+
+ クイッククラスブラウザパネルを表示(&Q)
+
+
+ ????????:
+
+
+ 列(&N)
+
+
+ キャレット後
+
+
+ ?????
+
+
+ ???????
+
+
+ ???????????
+
+
+ EOL??????(&E)
+
+
+ ??????????????(&M)
+
+
+ 水平ルーラを表示(&H)
+
+
+ ???????(&I)
+
+
+ ??????????(&A)
+
+
+ 行番号を表示(&L)
+
+
+ 1?
+
+
+ なし
+
+
+ ???????
+
+
+ マーカとルール
+
+
+ ???????(&S)
+
+
+ ?????(&T)
+
+
+ エラーに下線を表示(&U)
+
+
+ ???????(&C)
+
+
+ ??????????????
+
+
+ ?????????????????
+
+
+ ???????????
+
+
+ ????????
+
+
+ ツール
+
+
+ ?????????????
+
+
+ ?????
+
+
+ モジュール
+
+
+ Windowsアプリ
+
+
+ アセンブリを生成するディレクトリを選択してください.
+
+
+ ?????
+
+
+ SharpDevelopの設定
+
+
+ ????????????(&C)
+
+
+ ??????????????(&M)
+
+
+ ????????????????
+
+
+ ??????????(&F)
+
+
+ ??????????
+
+
+ Win32????????(&R)
+
+
+ ??
+
+
+ DLL???????:
+
+
+ ??????
+
+
+ ??????:
+
+
+ ??????:
+
+
+ ??
+
+
+ ????(&O):
+
+
+ ?????(&S)
+
+
+ Intel 64-bit Itanium?????
+
+
+ ???(&A)
+
+
+ ?????(&S):
+
+
+ ?????????????(&R)
+
+
+ ?????
+
+
+ ?????????????
+
+
+ ?????????????????????????(&C)
+
+
+ ????????? ????:
+
+
+ ??
+
+
+ mscorlib.dll??????(&M)
+
+
+ ??????
+
+
+ VB?????????:
+
+
+ ??
+
+
+ ??-??
+
+
+ ?????????(&M)
+
+
+ ?????????
+
+
+ ????????(&W):
+
+
+ ??????????????????????????????????????????
+
+
+ ????????
+
+
+ ????????-??
+
+
+ ???????????
+
+
+ ????(&N)
+
+
+ ????????(&R)
+
+
+ ??
+
+
+ ????
+
+
+ ????(&A)
+
+
+ ????????????????
+
+
+ ??????
+
+
+ ??????
+
+
+ ????????(&W)
+
+
+ ????????(&F)
+
+
+ ????????(&E)
+
+
+ ?????????(&N)
+
+
+ ???????? ???????
+
+
+ ?????????????????
+
+
+ ???????????6??????????
+
+
+ sn.exe?????????.NET Framework SDK?????????????????????
+
+
+ ???????
+
+
+ ???????
+
+
+ ???????????????????????????????????????????????????????????????
+
+
+ ???????
+
+
+ .NETアセンブリブラウザ
+
+
+ ?????
+
+
+ ?????????????????
+
+
+ ???
+
+
+ バージョン
+
+
+ GAC
+
+
+ ??
+
+
+ プロジェクトディレクトリ
+
+
+ ???????
+
+
+ プロジェクト
+
+
+ ???
+
+
+ 選択された参照
+
+
+ ??(&E)
+
+
+ 型
+
+
+ ??
+
+
+ ???
+
+
+ ???????
+
+
+ ファイル名
+
+
+ ????????????????????????????????
+
+
+ 対象(&C)
+
+
+ 行数
+
+
+ プロジェクトモードで行う必要があります
+
+
+ ??(&S)
+
+
+ 合計
+
+
+ ???
+
+
+ ????SDK bin?????${Executable} ????????
+
+
+ ${File}を読み込めませんでした。 ファイルが見つかりません。
+
+
+ ????????
+
+
+ ???????
+
+
+ ????????????????????????????
+
+
+ ????
+
+
+ ソース
+
+
+ ????
+
+
+ 追加(&A)
+
+
+ < 戻る
+
+
+ ??(&B)
+
+
+ キャンセル
+
+
+ ??(&C)
+
+
+ 保存先を選択
+
+
+ ???(&C)
+
+
+ 新規
+
+
+ ??
+
+
+ ??(&D)
+
+
+ ??????
+
+
+ 編集(&E)
+
+
+ エラー
+
+
+ {0}'????????????????
+
+
+ 完了
+
+
+ 終了
+
+
+ ????
+
+
+ ????????
+
+
+ ????
+
+
+ ???(&H)
+
+
+ 無視
+
+
+ ???????
+
+
+ ??????????????
+
+
+ 現在のファイル
+
+
+ ディレクトリ
+
+
+ すべてのプロジェクト
+
+
+ 下へ移動(&D)
+
+
+ ????(&U)
+
+
+ ??
+
+
+ ?? >
+
+
+ OK
+
+
+ ??(&O)
+
+
+ ?????
+
+
+ ??
+
+
+ ??
+
+
+ 更新
+
+
+ 取り除く(&R)
+
+
+ ?????(&N)
+
+
+ ???
+
+
+ ???????
+
+
+ ??
+
+
+ 行
+
+
+ 警告
+
+
+ ??
+
+
+ ????????????????????????. ??????????????
+
+
+ ファイル名に不正な文字が含まれています。異なる名前を選択してください。
+
+
+ ??
+
+
+ ????...
+
+
+ ?????(&D):
+
+
+ ?????(&P):
+
+
+ ????????(???????????)
+
+
+ ????Web????
+
+
+ XML????
+
+
+ ?????????????????:
+
+
+ ?????
+
+
+ ???????????{0}???
+
+
+ <?????>
+
+
+ ?????????????????? ${Count} ?????????????????????????????????????
+
+
+ ??????????
+
+
+ ?????????????
+
+
+ ????????????????
+
+
+ ??
+
+
+ ??????:
+
+
+ ???????????????
+
+
+ ??????????????????????????
+
+
+ ???????
+
+
+ ? {0} ???????:
+
+
+ ICSharpCode.Core??????????
+
+
+ ?
+
+
+ ???????????????????Ctrl+Space?????????
+
+
+ FxCop??????????????:
+
+
+ ??Mono????????????????:
+
+
+ FxCop?????
+
+
+ FxCop??????
+
+
+ FxCop??
+
+
+ FxCop????????? - ???FxCop?????????????
+
+
+ ????????(CODE_ANALYSIS?????) (&E)
+
+
+ ?????????????...
+
+
+ ???????????????(CODE_ANALYSIS?????) (&R)
+
+
+ SharpDevelop????????FxCop??????????
+
+
+ ???
+
+
+ ????????
+
+
+ ?????????
+
+
+ ???????
+
+
+ ?????
+
+
+ ???
+
+
+ ??????????????????????:
+
+
+ ??
+
+
+ ??
+
+
+ ?????????
+
+
+ 説明
+
+
+ ????
+
+
+ ?????
+
+
+ ???????
+
+
+ ??????????
+
+
+ ?????????
+
+
+ ???????
+
+
+ ??????????????????????
+
+
+ .NETリソースファイル(バイナリ)
+
+
+ C#ソースファイル
+
+
+ Javaソースファイル
+
+
+ ??????
+
+
+ .NETリソースファイル
+
+
+ VB.NETソースファイル
+
+
+ XMLドキュメント
+
+
+ NAnt '{0}' ????????
+
+SharpDevelop???????NAnt???????????????????
+
+
+ NAnt????
+
+
+ ??????????(&B)
+
+
+ ??????(&G)
+
+
+ NAnt?????(&V)
+
+
+ ??(&B)
+
+
+ NAnt????????
+
+
+ ?????????
+
+
+ ?????????????(&T)
+
+
+ ????????(&T)
+
+
+ NAnt???(&S)
+
+
+ ???????
+
+
+ PInvoke?????
+
+
+ ??
+
+
+ ??
+
+
+ ?????:
+
+
+ ????
+
+
+ ?? '{0}' ???????????
+
+
+ PInvoke?????...
+
+
+ C#??Python
+
+
+ VB.NET??Python
+
+
+ ??Python????????
+
+
+ Python????????
+
+
+ {0}'???????????????????????????????
+
+
+ ??Ruby????????
+
+
+ Ruby????????
+
+
+ ${Path}?????${FileNameWithoutPath}????????????????. ??????????????????????????????????.
+
+
+ ${Path}???${FileNameWithoutPath}??????????????????. ???????????????????????????????????????????????????. (???????????????)
+
+
+ C#からVB.NETへ
+
+
+ デバッグ
+
+
+ デフォルト
+
+
+ <??>
+
+
+ ???????
+
+
+ ???????
+
+
+ <デフォルトにリセット>
+
+
+ ?????????????????????????
+??:????????????????????????
+
+
+ ??
+
+
+ ????
+
+
+ ????
+
+
+ ??????????????????????(??????????)
+
+
+ ?????${ErrorCount} ????????????
+
+
+ ?????????
+
+
+ ????????
+
+
+ VB.NET??Boo
+
+
+ '${FileName}'をオープン出来ませんでした。有効なコンバインやプロジェクトではありません。
+
+
+ SharpDevelop?'${SolutionName}'??????????'${ProjectName}'?????????
+
+
+ ${ProjectName}' ? '${SolutionName}' ???
+
+
+ ${ProjectName}' ??????????????
+
+
+ プリントドキュメントの生成が出来ません
+
+
+ この名前のファイルは書き込み保護され既にこの位置に存在します。
+
+
+ ??
+
+
+ ?????????
+
+
+ ???????
+
+
+ ????????????
+
+
+ ファイルを再読み込みしますか?
+(再読み込みするとすべての変更が失われます)
+
+
+ ????????? ${LanguageBinding} ?${FileName}???????????
+
+
+ ファイルを保存しました
+
+
+ ?????'${FileName}'?????????
+
+
+ ファイルを保存しました
+
+
+ ????????????????????
+
+
+ VB.NETからC#へ
+
+
+ (+${NumOverloads} ???????)
+
+
+ ${CurrentMethodNumber} / ? ${NumberOfTotalMethods}
+
+
+ ファイル ${File} が外部で変更されたようです。再読み込みしますか?
+
+
+ ??
+
+
+ SharpDevelop???
+
+
+ SharpDevelop??????????????????????????????????SharpDevelop?????????????SharpDevelop??????????????????????
+
+
+ ???????????????:??????????????????Web??????????????????
+???????????????????????????????????????????????????????????????????????
+
+
+ ???SharpDevelop???????? ???????????????!
+
+
+ SharpDevelop????????????
+
+
+ ??????????????SharpDevelop???????????????????
+
+
+ フォームをデシリアライズできません。可能な理由:Initialize componentメソッドが手動で変更されました。
+
+
+ ${RootComponent}'.????????????????????????
+
+
+ ルートデザイナーはウィンドウフォーム表示テクノロジをサポートしていません。
+
+
+ ??????????????:
+
+
+ ?????
+
+
+ ??
+
+
+ ????
+
+
+ ???????????(&O)
+
+
+ カスタム
+
+
+ ??????????
+
+
+ ?????????????????
+
+
+ ???.NET?????????????????
+
+
+ バージョン
+
+
+ GAC
+
+
+ ????? ${Name} ???????????????????
+
+
+ ?????(&F)
+
+
+ ??????????(&A)
+
+
+ ?????
+
+
+ ????
+
+
+ ????????
+
+
+ ????
+
+
+ ??(&N)
+
+
+ ?????????????????
+
+
+ ??????????(&M)
+
+
+ ????????????????????????????
+
+
+ ?????(&E)
+
+
+ ?????...
+
+
+ ????????
+
+
+ ??????????
+
+
+ ??????
+
+
+ ?????
+
+
+ ??
+
+
+ Visual Studio?????????????????
+
+
+ グリッドプロパティ
+
+
+ 高さ(&H)
+
+
+ ?????????
+
+
+ ???????????
+
+
+ プロパティをアルファベット順にソート
+
+
+ ???????(&S)
+
+
+ ?????????????
+
+
+ ?????
+
+
+ グリッドに吸着(&N)
+
+
+ ?(&W)
+
+
+ ????????????"TODO"???????
+
+
+ ?????????(??????????????????????????????????)
+
+
+ ??????????????
+
+
+ ウィンドウフォームデザイナー
+
+
+ カテゴリ名(&C)
+
+
+ この名前は重複しています。別の名前を選択してください。
+
+
+ ???????
+
+
+ カテゴリ名を変更
+
+
+ ??????????(&S)
+
+
+ ???????????????????????????????
+
+
+ ???????????????????????(???????????????????????????)
+??????????????????
+
+
+ ???????????????????????????
+Windows??????????????????????????????????????????
+(?????????????????????????????)
+
+
+ False
+
+
+ True
+
+
+ Web?????
+
+
+ ??????
+
+
+ ??
+
+
+ ??
+
+
+ ??URI
+
+
+ ????
+
+
+ ??
+
+
+ ????(&A)
+
+
+ ?
+
+
+ ?????Web????
+
+
+ ?????????
+
+
+ ???????????????
+???????????????
+
+
+ 不正なプロジェクト名。文字、数字、スペース、'.'もしくは'_'のみが許されています。
+
+
+ ??????????:???????????????????
+
+
+ ??????????:????????????????????????
+
+
+ &Select the file types you want to associate with SharpDevelop:
+
+
+ ファイルタイプ
+
+
+ &Register file types at application startup
+
+
+ 大文字と小文字を区別する(&C)
+
+
+ ?????????
+
+
+ ??????????(&I)
+
+
+ ????????(&R)
+
+
+ ソート方向
+
+
+ ??(&A)
+
+
+ 降順(&D)
+
+
+ ???????
+
+
+ Url:
+
+
+ ????(&U)
+
+
+ ?????...
+
+
+ ????(&R)
+
+
+ 説明を表示(&S)
+
+
+ ??????????:????????????????????????????????
+
+
+ ????
+
+
+ ????????
+
+
+ ファイルのビルドアクション
+
+
+ ??????????????????????????
+
+
+ ???????
+
+
+ ???????????
+
+
+ ??????????????????????
+
+
+ ???
+
+
+ ?????
+
+
+ ????????????????????????????????????????????????????????????:????????????????
+
+
+ ????????
+
+
+ もしtrueならば、アウトプットパスに参照されたアセンブリがコピーされます
+
+
+ ???
+
+
+ ????????
+
+
+ URL??
+
+
+ Web??URL??
+
+
+ ?????
+
+
+ Web??URL
+
+
+ Web??URL
+
+
+ ??????????? ${combineLocation} ?????????????????????????
+
+
+ ? '${type}' ???????????????
+
+
+ ファイル ${fileName} を書き込むことが出来ないかもしれません。
+
+
+ プロジェクトファイル ${projectLocation} はすでに存在する。すでに存在するファイルを上書きしますか?
+
+
+ ????????????
+
+
+ ??????????????????
+
+
+ ??????????????
+
+
+ ?????????????????????
+
+
+ ?????????????(&p) :
+
+
+ ???????????????(&t) :
+
+
+ ???????????????????
+
+
+ ???????????
+
+
+ <?????>
+
+
+ ?????? ???????
+
+
+ ???????????????????SharpDevelop?????????
+??????Framework?????????????????????????????
+
+
+ 現在の環境が見つかりません。
+'オプション->表示スタイル'を表示し、現在の言語環境を変更してください。
+
+
+ 全てマークしました。
+
+
+ 置換が全て完了しました。
+
+
+ ????
+
+
+ ???????
+
+
+ ?????????????
+
+
+ ?????????????
+
+
+ ??????????????
+
+
+ ???????????
+
+
+ ???????
+
+
+ ${Name} ?????...
+
+
+ ???????????????????? '{0}' ?????????
+
+
+ ???????
+
+
+ ?????:
+
+
+ ???????:
+
+
+ ???????????
+
+
+ WiX?????
+
+
+ ????????????ID '{0}' ???????????
+
+
+ ?????????,?????????????
+
+?:
+
+Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension
+
+
+ ?????
+
+
+ ??
+
+
+ ?????????
+
+
+ ???????????????????WiX?????????????
+
+
+ TARGETDIR ???????DirectoryRef??????????????????????WiX???????WiX3.0??????"http://schemas.microsoft.com/wix/2006/wi"????????
+
+
+ ??????????
+
+
+ ?????????...
+
+
+ WiX????????
+
+
+ WiX?????
+
+
+ ????????????
+
+
+ {1} ?? {0} ???????????
+
+
+ ??...
+
+
+ WiX??????????????????????????????????????????????????????????????????????????????
+
+
+ ???????????
+
+
+ ?????????????
+
+
+ ??????64
+
+
+ ??????
+
+
+ ?????
+
+
+ ????
+
+
+ ??????
+
+
+ ???
+
+
+ ?????????(x64)
+
+
+ ?????????
+
+
+ ??
+
+
+ ???????
+
+
+ ????
+
+
+ Temp
+
+
+ ??????
+
+
+ Wix??
+
+
+ WiX?????
+
+
+ WiX??????????
+
+
+ .NET Framework??
+
+
+ ??????????
+
+
+ WiX??????
+
+
+ WiX??????????
+
+
+ WiX?????????
+
+
+ ??????
+
+
+ ????
+
+
+ ?????
+
+
+ ??
+
+
+ ???
+
+
+ ????:
+
+
+ XSLT?????(&A)...
+
+
+ XSLT????????????
+
+
+ スキーマを生成
+
+
+ XPath?????(&X)
+
+
+ XSLT???(&O)
+
+
+ XSLT???(&T)
+
+
+ Xmlスキーマを選択
+
+
+ XML???(&V)
+
+
+ ?????????????(&A)
+
+
+ ??????????????(&T)
+
+
+ XML?????
+
+
+ XML??????
+
+
+ 拡張(&E)
+
+
+ ???????
+
+
+ 接頭辞(&P)
+
+
+ スキーマ(&S)
+
+
+ ????
+
+
+ スキーマを追加できません。'{0}'という名前空間はすでに存在します。
+
+
+ ???? '{0}' ????????????????
+
+
+ Xmlスキーマ
+
+
+ スキーマを追加することが出来ません。
+
+
+ 変更を保存することが出来ません。
+
+
+ ?????...
+
+
+ ????????
+
+
+ ???????????
+
+
+ ???????...
+
+
+ ????????????
+
+
+ ????????????
+
+
+ ?????
+
+
+ XML???
+
+
+ ????
+
+
+ XPath????0???????
+
+
+ ??
+
+
+ XPath???
+
+
+ XPath:
+
+
+ XSLT??
+
+
+ ILSpy??????????????
+
+
+ ILSpy???
+
+
+ ILSpy??????
+
+
+ 外部ツールの構成ファイルを読み込むことが出来ません
+
+
+ テンプレート構成ファイルを読み込むことが出来ません
+
+
+ プロジェクトテンプレート読み込みエラー:
+
+
+ ??????????????
+
+
+ ??????????
+
+
+ ??????????
+
+
+ ??????????...
+
+
+ ------ ?????: ??????: ${Project} ??: ${Config} ------
+
+
+ ??????
+
+
+ COM ??????????????
+
+
+ ??: ${Script}
+
+
+ ??????...
+
+
+ ビルド完了 -- ${Errors} エラー, ${Warnings} 警告
+
+
+ ${Name} ?????????(SharpDevelop??????)
+
+
+ SharpDevelop
+
+
+ 変更を破棄しますか?
+
+
+ 変更を保存しますか?
+
+
+ ??????????
+
+
+ ?????? ${Project}
+
+
+ レディ
+
+
+ ?????????
+
+
+ ?????/??
+
+
+ ????????
+
+
+ ????????
+
+
+ {0} @? {1}
+
+
+ ??
+
+
+ ??????
+
+
+ ????????(&O)
+
+
+ ???????????(&P)
+
+
+ ???????????(&S)
+
+
+ ????????
+
+
+ ??
+
+
+ ???
+
+
+ ??
+
+
+ ??????????
+
+
+ ???
+
+
+ ???????:
+
+
+ ????????
+
+
+ ???????
+
+
+ ???????????????????????????
+
+
+ ???????????????????????
+
+
+ ??????????????????????????????????????????
+
+
+ [??????]
+
+
+ ??
+
+
+ ?????????
+
+
+ ???????
+
+
+ ?????????
+
+
+ ????
+
+
+ ???????? ???!
+
+
+ {2} ??? {1} ?? {0} ?????????????
+
+
+ ??
+
+
+ ??
+
+
+ ??
+
+
+ ???????????
+
+
+ ???????????
+
+
+ ????????????
+
+
+ ????
+
+
+ ?????
+
+
+ ????????
+
+
+ at {0}
+
+
+ ???????? {0} ?????????
+
+
+ ????????
+
+
+ ?????????
+
+
+ ?????
+
+
+ ??
+
+
+ ??/??? ?????????
+
+
+ ????
+
+
+ ?????
+
+
+ ???????????????????????
+
+
+ {0} ? {1} ????????
+
+
+ ?????????
+
+
+ ?????????
+
+
+ ?????????????
+
+
+ ???????????
+
+
+ ?????????????????
+
+
+ ????????????????
+
+
+ ?????????...
+
+
+ 16???????
+
+
+ ?????????
+
+
+ ????
+
+
+ ????????:
+
+
+ ???????:
+
+
+ ????????
+
+
+ ????????????????????!
+
+
+ ????????
+
+
+ {0} ?? {1} ?????? - ??? {2}.
+
+
+ ??????????????
+
+
+ {1} ???????? {0}?????????
+
+
+ ???????????
+
+
+ ?????????????
+
+
+ ??
+
+
+ ????
+
+
+ ?????????
+
+
+ ????????
+
+
+ ????????????
+
+
+ スレッド
+
+
+ ?????????????????????????????
+
+
+ ?????????????????????????
+
+
+ ???????????????????????????????
+
+
+ ??
+
+
+ ??
+
+
+ ??
+
+
+ ????
+
+
+ ????
+
+
+ ??
+
+
+ ??
+
+
+ ?????????????
+
+
+ ????
+
+
+ ??????
+
+
+ ????????:
+
+
+ ???????
+
+
+ ${TaskService.Messages} ?????
+
+
+ ??????????????????
+
+
+ ???????????????
+
+
+ ???
+
+
+ ??????
+
+
+ ????
+
+
+ ???
+
+
+ ファイル
+
+
+ ???
+
+
+ アウトプット
+
+
+ ビルド
+
+
+ ????
+
+
+ プロジェクト
+
+
+ ?????
+
+
+ ?????????
+
+
+ <?????>
+
+
+ ????????
+
+
+ ????
+
+
+ in
+
+
+ 1 ????
+
+
+ 1 ?
+
+
+ ????????
+
+
+ ????
+
+
+ ??????
+
+
+ ???
+
+
+ ???????
+
+
+ ??????
+
+
+ ??????
+
+
+ ???????: ??
+
+
+ ------ xml検証中 ------
+
+
+ 検証: 成功
+
+
+ ??????????????????????????
+
+
+ 定義へ移動(&G)
+
+
+ 現在選択しているプロジェクトにnunitへの参照を追加
+
+
+ ?????????????
+
+
+ ??????????
+
+
+ ??????
+
+
+ ??????
+
+
+ ??????
+
+
+ ?????????????????????????????????
+
+
+ エラーの読み込み
+
+
+ ?????? '${TestCase}' ??
+
+
+ ?????? '${TestCase}' ???????????
+
+
+ アセンブリをロード...
+
+
+ ??????????????
+
+
+ ???????????
+
+
+ ???(&C)
+
+
+ これ以外を閉じる(&b)
+
+
+ 保存(&A)
+
+
+ ????????(&A)...
+
+
+ ファイル名をコピー
+
+
+ ?????????????????????
+
+
+ ???
+
+
+ ???
+
+
+ ???????????????????????????????????????????
+
+
+ ${FileName}' ??????????????????????????
+
+
+ 追加
+
+
+ ?????
+
+
+ Web?????
+
+
+ ${FileName}'??????????
+
+
+ ${FileName}'???????????????????????
+
+
+ ??????????
+
+
+ ???????...
+
+
+ ?????????
+
+
+ Html???????(&E)
+
+
+ ?????????
+
+
+ コンパイル
+
+
+ 配置
+
+
+ ???????...
+
+
+ ???????(&E)
+
+
+ ?????(&N)
+
+
+ ?????????(&N)
+
+
+ ??????????????(&F)
+
+
+ 開く(&P)
+
+
+ ????(&E)
+
+
+ 名前の変更(&N)
+
+
+ ????????????????(&A)
+
+
+ 新しいフォルダ
+
+
+ project {0} から全てのWeb参照を削除しますか?
+
+
+ ????Web?????
+
+
+ ????? (*.dll)|*.dll
+
+
+ アセンブリ
+
+
+ ????
+
+
+ ?????
+
+
+ アセンブリの生成
+
+
+ ECMA script ??
+
+
+ 終了
+
+
+ 明白なキャプチャ
+
+
+ ????
+
+
+ ?????????
+
+
+ ホワイトスペースを無視
+
+
+ ??
+
+
+ ??
+
+
+ マルチライン
+
+
+ ????
+
+
+ public???
+
+
+ ????
+
+
+ 置換
+
+
+ 置換後の文字列
+
+
+ 置換結果
+
+
+ 右から左へ
+
+
+ ???????
+
+
+ ???
+
+
+ 開始
+
+
+ ???
+
+
+ ???
+
+
+ クラス名は空にすることが出来ません
+
+
+ ????????????:
+
+
+ 生成に失敗しました:理由
+
+
+ ???????????????
+
+
+ 有効なファイル名を入力してください。
+
+
+ ファイル名を入力してください。
+
+
+ ??
+
+
+ 一致
+
+
+ ?????????????
+
+
+ ??
+
+
+ ????
+
+
+ ???????
+
+
+ ??
+
+
+ ビットマップを更新...
+
+
+ ???????
+
+
+ リソースを読み込めません
+
+
+ ?????????????: ??????????????'{0}' ???????
+
+
+ ??
+
+
+ ???????(&F)
+
+
+ 文字列の追加(&N)...
+
+
+ リソース名をコピー
+
+
+ 名前の変更(&R)
+
+
+ 型
+
+
+ このキーはすでに定義されています。別のものを使ってください。
+
+
+ すべてのファイル (*.*)
+
+
+ ????????? (*.exe;*.dll)
+
+
+ Boo??????????
+
+
+ コンバインファイル (*.cmbx)
+
+
+ C++ファイル (*.cpp;*.c;*.hpp;*.h)
+
+
+ C#???? (*.cs)
+
+
+ ????????
+
+
+ ???????? (*.exe;*.com;*.pif;*.bat;*.cmd)
+
+
+ ???????? (*.ico)
+
+
+ IL????
+
+
+ ILAsm??????????
+
+
+ ????????
+
+
+ NAnt???????
+
+
+ ???????? (*.resources;*.resx)
+
+
+ ??????? (*.sln)
+
+
+ VBファイル (*.vb)
+
+
+ XML???? (*.xml)
+
+
+ Xmlスキーマファイル (*.xsd)
+
+
+ XSL????
+
+
+ グリッドに合わせる(&G)
+
+
+ ??????(&C)
+
+
+ ????
+
+
+ ????????????!
+
+
+ ${Name}??????
+
+
+ ??????????????????????
+
+
+ ${Name}??????
+
+
+ ????????
+
+
+ ???????
+
+
+ ??????????
+
+
+ ????????(&D)
+
+
+ ????????
+
+
+ ?????????...
+
+
+ ?????????(&O)
+
+
+ ????????(&B)
+
+
+ ????????
+
+
+ ??????????????????????????
+
+
+ ????'${FileName}'???????
+
+
+ ${Name}???????
+
+
+ ????????import??????????(&U)
+
+
+ ????????????
+
+
+ ?????(&R)
+
+
+ ASCIIコード表
+
+
+ ??????????
+
+
+ C#ドキュメントタグ
+
+
+ ??
+
+
+ ?????
+
+
+ ????????????????????????
+
+
+ XSLT
+
+
+ ??????????????????
+
+
+ ??SharpDevelop????????Visual Studio .NET 2003(??)??????????????????????????
+??????SharpDevelop 3.2????????????????????????????????????
+
+
+ {0}????????:\n{1}
+
+
+ ??????????? {0} ?????????????????????????
+
+
+ {0}????????::\n{1}\n\n????????????????
+
+
+ ???????????????????????
+SharpDevelop 2??????????????????:?????????????????????????????????????????????
+
+?????????????????/???????
+
+
+ ????????????????/??????????
+
+
+ {0}'??????????????????????
+
+
+ データベース
+
+
+ SharpDevelop????
+
+
+ ??????????
+
+
+ ?????
+
+
+ ??????????
+
+
+ グループ化/並び替え
+
+
+ ??????????
+
+
+ ????????
+
+
+ 選択を表示
+
+
+ 基本設定
+
+
+ ????
+
+
+ 詳細セクション
+
+
+ ページフッタ
+
+
+ ページヘッダ
+
+
+ ????????
+
+
+ ????????
+
+
+ ????????????
+
+
+ SharpDevelop??????????????????1??????????????????????
+
+
+ ???'SharpReport'?????????????????????
+
+
+ ファイルが壊れていて読み込めません(SharpReportファイルは不正なフォーマットです)
+
+
+ ??????????
+
+
+ ??????
+
+
+ ?????????
+
+
+ ??
+
+
+ ???
+
+
+ ???????????
+
+
+ ?????
+
+
+ ??????????
+
+
+ ????????
+
+
+ ??????
+
+
+ ??????
+
+
+ ??
+
+
+ ???????????
+
+
+ PDF???????
+
+
+ ??
+
+
+ ?
+
+
+ SharpReport - コントロール
+
+
+ データフィールド
+
+
+ ????
+
+
+ SharpReport - 機能
+
+
+ ?????
+
+
+ ページ数
+
+
+ 今日
+
+
+ ????????
+
+
+ ????????
+
+
+ ????
+
+
+ ?
+
+
+ ????
+
+
+ 矩形
+
+
+ ?
+
+
+ ???
+
+
+ ????
+
+
+ ???????
+
+
+ ????????
+
+
+ ???????
+
+
+ ?????
+
+
+ ???????
+
+
+ ?????????
+
+
+ ??????
+
+
+ ?????????
+
+
+ ???????
+
+
+ ?????????
+
+
+ ??(????)???
+
+
+ ????????
+
+
+ タブを追加(&A)
+
+
+ ?????(&D)
+
+
+ ??"${TabHeader}"????????(????????????????????)
+
+
+ ?????(&D)
+
+
+ アイテム"${TabItem}"を削除しますか?
+
+
+ ????????(&R)
+
+
+ ????????(&R)
+
+
+ 作者を表示
+
+
+ ??
+
+
+ ???????
+
+
+ ????
+
+
+ ?????
+
+
+ ?????
+
+
+ ????????
+
+
+ ??
+
+
+ ????
+
+
+ スタート
+
+
+ ??????????
+
+
+ コンバインを開く
+
+
+ ???????
+
+
+ 挿入
+
+
+ 上書
+
+
+ 行:${Line} 列:${Column} 文字:${Character}
+
+
+ その他
+
+
+ Windows????????
+
+
+ ????????????
+
+
+ ???????????????
+
+
+ ???????
+
+
+ ???
+
+
+ ?????????
+
+
+ 空のファイル
+
+
+ ??
+
+
+ 空のヘッダファイルを生成。
+
+
+ ヘッダファイル
+
+
+ 空のHTMLファイル
+
+
+ ??HTML???????
+
+
+ ????????
+
+
+ "My"????????????????
+
+
+ ???NAnt??????????
+
+
+ NAnt???????
+
+
+ #if TEST ... #endif'???
+
+
+ ??????????TEST???????????????????????
+
+
+ SetUp???
+
+
+ True????SetUp???
+
+
+ TearDown???
+
+
+ True????TearDown???
+
+
+ ?????
+
+
+ ?????
+
+
+ ??????????????????????????????????????
+
+
+ 空のリソースファイルを作成
+
+
+ 空のリソースファイル
+
+
+ #Dの空のメニューコマンド。
+
+
+ メニューコマンド
+
+
+ #Dのオプションパネル。
+
+
+ オプションパネル
+
+
+ 様々な場合に使用することができるコマンド。
+
+
+ シンプルコマンド
+
+
+ #Dパッドコンテンツ (#Dビューの例)。
+
+
+ 空のパッド
+
+
+ #Dビューコンテンツ (テキストエディタやリソースエディタの例)
+
+
+ 空のビュー
+
+
+ シングルトンパターンに従ったクラスを生成します。
+
+
+ シングルトンクラス
+
+
+ Equals()?GetHashCode()???????????
+
+
+ ???????Equals()?GetHashCode()?????????
+
+
+ ???
+
+
+ ??????????
+
+
+ ??????????????
+
+
+ 基本的な単体テストを生成します。
+
+
+ ???????
+
+
+ ASP.NET Web??????
+
+
+ ASP.NET Web????
+
+
+ ??????????ASP.NET??Web???????????
+
+
+ ASP.NET Web????
+
+
+ ASMX Web????????????????
+
+
+ ASP.NET Web????
+
+
+ Windows?????????????
+
+
+ フォーム
+
+
+ Windows??????????????????
+
+
+ ユーザコントロール
+
+
+ WPF?????????
+
+
+ WPF???
+
+
+ WPF??????????
+
+
+ WPF??????????
+
+
+ WPF?????????
+
+
+ WPF?????
+
+
+ WPF?????
+
+
+ Wix用空の断片ファイル
+
+
+ 空のWix断片ファイル
+
+
+ ?????????????
+
+
+ ?????????????????
+
+
+ ??????????????
+
+
+ ?????????app.config??????????????????MSBuild????appname.exe.config???????????
+
+
+ 空のXMLファイル
+
+
+ 空のXMLファイルを作成。
+
+
+ ??XML???????
+
+
+ XML????
+
+
+ ??XML????????????
+
+
+ XML?????????
+
+
+ ?????????????????????
+
+
+ 空のコンバイン
+
+
+ ???????????????????????????
+
+
+ ????????
+
+
+ コマンドラインアプリケーションを生成するプロジェクトです。
+
+
+ ?????????????
+
+
+ ?????????????????
+
+
+ Direct3D??????????????????????????????
+
+
+ Direct3D????????
+
+
+ 空のプロジェクト。
+
+
+ ????????
+
+
+ Glade# ?????????????????
+
+
+ Gtk# ?????????????????
+
+
+ MSIインストーラのためのWindowsインストーラプロジェクト。
+
+
+ ????????????
+
+
+ COM???????????????????
+
+
+ ??????
+
+
+ SharpDevelop?????????????????????????
+
+
+ SharpDevelop????
+
+
+ Silverlight?????????????????????
+
+
+ ??????????????????????????????????????
+
+
+ ??????????????
+
+
+ Windowsアプリケーションに使用されるユーザコントロールを生成するプロジェクトです。
+
+
+ Windowsユーザコントロールライブラリ
+
+
+ ASP.NET Web???????????????
+
+
+ Windows??????????????????????????????
+
+
+ Windows????????
+
+
+ Windows???????????????
+
+
+ Windowsサービス
+
+
+ ?????WPF???????????
+
+
+ 1?????????????????WPF???????????
+
+
+ ???????????????????????
+
+
+ ????????...
+
+
+ ??(&A)
+
+
+ ??????
+
+
+ ????
+
+
+ ???????????(&B)
+
+
+ ????????????(&C)
+
+
+ ??/???????????
+
+
+ ??????????(&P)
+
+
+ ${CurrentProjectName} ?????(&E)
+
+
+ ????(&D)
+
+
+ ?????????...
+
+
+ ??(&B)
+
+
+ ???????????
+
+
+ デバッグを続ける(&C)
+
+
+ ?????????
+
+
+ ????
+
+
+ ??????.NET Framework?????????????????????????????????????????
+
+
+ ???????????
+
+
+ ?????????
+
+
+ ????????????????????????????
+
+
+ ??????????????????????????
+
+
+ ?????????
+
+
+ ?????????
+
+
+ ????????????????????
+
+
+ ??????
+
+
+ ??????
+
+
+ ???????
+
+
+ ???????
+
+
+ ????????
+
+
+ ????????
+
+
+ プロセスを停止
+
+
+ 現在のプロセスを停止させ、デバッガを終了します。
+
+
+ ?????????????
+
+
+ 編集(&E)
+
+
+ コピー(&C)
+
+
+ ???????????????????
+
+
+ ????(&T)
+
+
+ ???????????????????????
+
+
+ ??(&D)
+
+
+ ??
+
+
+ 折りたたみ(&O)
+
+
+ 定義だけ表示(&D)
+
+
+ すべての折りたたみをトグル(&A)
+
+
+ ???????????(&T)
+
+
+ ??????(&F)
+
+
+ ????????????
+
+
+ 大文字小文字変換
+
+
+ ???????????
+
+
+ 行頭のタブをスペースに変換
+
+
+ ?????????
+
+
+ 行頭のホワイトスペースを削除
+
+
+ 行末のホワイトスペースを削除
+
+
+ 並び替え...
+
+
+ スペースをタブに置換
+
+
+ タブをスペースに置換
+
+
+ 大文字に変換
+
+
+ ????(&P)
+
+
+ クリップボードの文字列を挿入します
+
+
+ やり直し(&R)
+
+
+ ??????????????
+
+
+ ?????(&A)
+
+
+ 元に戻す(&U)
+
+
+ ???????????????
+
+
+ ???????(&W)...
+
+
+ ????(&F)
+
+
+ ????????????????
+
+
+ ??????????????????
+
+
+ ???(&C)
+
+
+ ファイル(&F)
+
+
+ コンバイン(&C)
+
+
+ すべてのバッファを閉じる(&L)
+
+
+ アプリケーションの終了(&E)
+
+
+ 新規作成(&N)
+
+
+ ????(&F)...
+
+
+ ???????????????
+
+
+ ??????(&P)..
+
+
+ コンバイン(&C)...
+
+
+ 開く(&O)
+
+
+ ????(&F)...
+
+
+ ????????????
+
+
+ ??????/???????(&P)...
+
+
+ ??(&R)
+
+
+ ???????(&P)
+
+
+ ?????????(&F)
+
+
+ ???????????(&R)
+
+
+ ??????????(&E)
+
+
+ 上書き保存(&S)
+
+
+ ????????????????
+
+
+ ?????(&L)
+
+
+ 現在オープンしているバッファをすべて保存します
+
+
+ ????????(&A)...
+
+
+ フォーマット(&O)
+
+
+ ??(&A)
+
+
+ 下(&B)
+
+
+ ????(&C)
+
+
+ 左(&L)
+
+
+ 右(&R)
+
+
+ グリッドに合わせる(&G)
+
+
+ 上(&S)
+
+
+ 上下中央(&M)
+
+
+ ??????????(&C)
+
+
+ ??(&H)
+
+
+ 上下(&V)
+
+
+ 左右の間隔(&H)
+
+
+ 最前面へ移動(&B)
+
+
+ ??(&R)
+
+
+ 間隔を狭くする(&D)
+
+
+ 間隔を広くする(&I)
+
+
+ ????????(&E)
+
+
+ 最背面へ移動(&S)
+
+
+ アイコンを並べる(&L)
+
+
+ コントロールのロック(&L)
+
+
+ ??(&O)
+
+
+ ??????(&B)
+
+
+ ??????(&S)
+
+
+ 同じサイズに揃える(&M)
+
+
+ ??(&B)
+
+
+ ??(&H)
+
+
+ ?(&W)
+
+
+ グリッドのサイズに揃える(&D)
+
+
+ ??????????(&S)
+
+
+ ?????(&P)
+
+
+ ????????(&T)
+
+
+ ?????(&V)
+
+
+ 削除(&R)
+
+
+ ???????(&D)
+
+
+ ???????(&I)
+
+
+ ????????(&E)
+
+
+ ヘルプ(&H)
+
+
+ ???????(&A)...
+
+
+ ?????????
+
+
+ ?????????(&D)
+
+
+ GPL???(&G)...
+
+
+ ReadMe(&R)...
+
+
+ ?????????????
+
+
+ ???Tip(&T)...
+
+
+ 目次(&H)
+
+
+ Web
+
+
+ プロジェクト(&P)
+
+
+ ????????(&O)...
+
+
+ 現在のプロジェクトをビルド
+
+
+ ??????????????????????
+
+
+ ???????????????????????????(???????)
+
+
+ ???????????????????????????????
+????????????
+
+
+ ???????
+
+
+ ??(&R)
+
+
+ ????????????????????(?????????)
+
+
+ ??(&S)
+
+
+ ?????????????(&C)
+
+
+ ????????????????????????
+
+
+ ??(&F)...
+
+
+ ????(&N)
+
+
+ ?????????(&S)
+
+
+ ??(&G)
+
+
+ ??????????(&M)
+
+
+ ??????????
+
+
+ 次のブックマーク(&X)
+
+
+ 次のブックマークへ移動します
+
+
+ ????????(&P)
+
+
+ ??????????????
+
+
+ 置換(&R)...
+
+
+ ブックマークの挿入/削除(&T)
+
+
+ ?????????????????????????
+
+
+ ツール(&T)
+
+
+ ??????(&C)
+
+
+ ?????????????????
+???????:
+
+
+
+ ???????:
+
+
+ ??????????
+
+
+ ????...
+
+
+ ???GUID???(&G)
+
+
+ オプション(&P)...
+
+
+ Quick XMLドキュメント
+
+
+ ??????????
+
+
+ ??(&V)
+
+
+ デバッグ(&D)
+
+
+ フルスクリーン(&F)
+
+
+ ??????
+
+
+ ?????
+
+
+ ????
+
+
+ スタートページを表示(&S)
+
+
+ ツール(&T)
+
+
+ ウィンドウ(&W)
+
+
+ 次(&N)
+
+
+ 前(&P)
+
+
+ 分割(&S)
+
+
+ ??:
+
+
+ ??????????????????????????????????????????
+
+
+ ??:
+
+
+ ???:
+
+
+ ???????
+
+
+ 選択範囲をコメント化
+
+
+ コピー(&C)
+
+
+ ????(&T)
+
+
+ ファイルモード
+
+
+ インデント
+
+
+ ????(&P)
+
+
+ ?????
+
+
+ 選択範囲を非コメント化
+
+
\ No newline at end of file
diff --git a/data/resources/StringResources.resx b/data/resources/StringResources.resx
index 0fd83c63fb3..50adcf0594c 100644
--- a/data/resources/StringResources.resx
+++ b/data/resources/StringResources.resx
@@ -8204,4 +8204,37 @@ a line break
Only insert selected code completion entry by typing <Tab> or <Enter>.
+
+ Choose exceptions you want the debugger to break on
+
+
+ Break on
+
+
+ Full exception name
+
+
+ Choose exceptions
+
+
+ Break on handled ${ExceptionName}
+
+
+ Solution
+
+
+ Project
+
+
+ All opened files
+
+
+ File
+
+
+ Namespace
+
+
+ Class/Module
+
\ No newline at end of file
diff --git a/data/resources/StringResources.ru.resx b/data/resources/StringResources.ru.resx
index fbe55df7e1b..1e2ad89d231 100644
--- a/data/resources/StringResources.ru.resx
+++ b/data/resources/StringResources.ru.resx
@@ -176,13 +176,13 @@
Плагин станет недоступным после перезапуска SharpDevelop
- Вы не можете отключить Менеджер Плагинов. Он необходим для переподключения Плагинов!
+ Вы не можете отключить Менеджер Плагинов. Он необходим для переподключения плагинов!
- Нельзя устанавливать плагины внутри папки ${ProductName},поскольку они являются предустановленными по умолчанию.
+ Нельзя устанавливать плагины внутри папки ${ProductName}, поскольку они являются предустановленными по умолчанию.
- Отменяет деинсталляцию выделенных плагинов.
+ Отменяет удаление выделенных плагинов.
Отменяет установку выделенных плагинов.
@@ -213,7 +213,7 @@
Скачайте их из Интернета, нажмите 'Установить плагин' и выберите скачаный файл, чтобы установить его.
- Открыть Web-сайт
+ Открыть Веб-сайт
Опции
@@ -236,18 +236,30 @@
Установить из архива...
+
+ Репозиторий:
+
Поиск:
Показать предустановленные плагины
+
+ Показывать нестабильные версии
+
- Вы не можете деинсталлировать Менеджер плагинов, поскольку он понадобится для инсталляции плагинов!
+ Вы не можете удалить Менеджер Плагинов, поскольку он понадобится для инсталляции плагинов!
+
+
+ Репозиторий плагинов SharpDevelop
Создатель:
+
+ Зависимости:
+
Загрузки:
@@ -270,7 +282,7 @@
Рейтинг:
- Пожаловаться:
+ Пожаловаться
Версия:
@@ -293,6 +305,9 @@
Добавить
+
+ Автоматически проверять обновления
+
Сместить вниз
@@ -311,6 +326,12 @@
Плагины
+
+ Разное
+
+
+ Репозитории
+
Следующие установленные плагины зависят от "{0}":
@@ -318,6 +339,15 @@
Они перестанут работать, если удалить данный плагин! Вы уверены, что хотите продолжить?
+
+ Плагины SharpDevelop|*.sdaddin;*.addin|Все файлы|*.*
+
+
+ Щелкните сюда, чтобы посмотреть обновления
+
+
+ Доступны обновления для SharpDevelop
+
Доступно
@@ -327,6 +357,27 @@
Обновления
+
+ В этом файле используется несколько разных символов переноса
+
+
+ Используются разные символы переноса
+
+
+ Исправить
+
+
+ Ошибка:
+
+
+ Следующий
+
+
+ Предыдущий
+
+
+ Использовать регулярные выражения
+
Показать диаграмму классов
@@ -348,9 +399,18 @@
Режим справки
+
+ Не удалось найти Help Library Manager. Для использования контекстной помощи в SharpDeveloper, необходимо скачать и установить Microsoft's Windows SDK 7.1.
+
+
+ Не удалось найти Help Library Manager. Пожалуйста, удостоверьтесь в том, что он был корректно установлен.
+
Установленные справочные каталоги
+
+ Запустить Help Library Manager
+
Микрософт "Help Viewer"
@@ -466,7 +526,10 @@
Объединить рекурсивные вызовы.
- Не профилировать внутренние вызовы dotNET.
+ Не профилировать внутренние вызовы .NET.
+
+
+ Собирать данные только в конце сессии.
Начать сбор данных немедленно после начала сессии.
@@ -496,17 +559,17 @@
Аргументы командной строки:
- Выберите путь выполнимой программы для профилирования.
+ Выберите путь до программы для профилирования.
Дополнительно можно указать рабочий каталог и аргументы командной строки.
- Путь к выполнимому файлу:
+ Путь к исполняемому файлу:
Старт профайлинга
- Выполнимый файл для профайлинга
+ Исполняемый файл для профайлинга
Рабочий каталог:
@@ -602,7 +665,19 @@
Старт с профайлером
- Искать..
+ Поиск ...
+
+
+ Добавить setter
+
+
+ Выберите поля, для которых вы хотите создать свойства:
+
+
+ Реализовать INotifyPropertyChanged
+
+
+ Создать свойства
Извлечь в отдельный метод
@@ -629,7 +704,7 @@
Извлекаемый исходный текст в {0} не поддерживается!
- Вставка конструктора
+ Вставить конструктор
Добавить проверку на null
@@ -643,6 +718,9 @@
Переменная
+
+ Переопределить Equals() и GetHashCode()
+
Добавить интерфейс {0}
@@ -652,8 +730,17 @@
Добавить перегрузку ${otherMethod}
+
+ Окружить #region
+
+
+ Переопределить ToString()
+
- Выберите поля, которые хотите использовать при выполнении ToString():
+ Выберите поля, которые хотите использовать для реализации ToString():
+
+
+ Проверить текущий проект с помощью StyleCop
Проверить с помощью StyleCop
@@ -662,34 +749,37 @@
Анализ исходного кода
- Добавить в список отклоненных
+ Добавить в ignore список
Аннотировать
- Ветвь/ярлык
+ Branch/tag
- Файл/папка не может быть скопирован, так как он в состоянии подверсии '{0}'.
+ Файл/папка не может быть скопирован, так как он в SVN статусе '{0}'.
- Файл/папка не может быть перемещён, так как он в состоянии подверсии '{0}'.
+ Файл/папка не может быть перемещён, так как он в SVN статусе '{0}'.
+
+
+ Файл/папка не может быть удален, так как он в SVN статусе '{0}'.
Проверить на изменения
- Получить
+ Checkout
Почистить
- Совершить
+ Commit
- Создать отрывок
+ Создать патч
Удалить каталог
@@ -698,7 +788,7 @@
Разность
- Править противоречия
+ Править конфликты
Ошибка удаления ${File}
@@ -713,7 +803,7 @@
История
- '{0}' был удалён из чёрного списка.
+ '{0}' был удалён из ignore списка.
Заблокировать
@@ -722,7 +812,7 @@
Считать противоречие разрешенным
- Объединить
+ Merge
Автоматическое добавление новых файлов
@@ -746,13 +836,16 @@
Переместить
- Перестать игнорировать
+ Удалить из ignore списка
- Броузер хранилища
+ Repository browser
- Вернуть
+ Revert
+
+
+ Файл бы изменен. Вы действительно хотите удалить его?
Граф ревизий
@@ -768,16 +861,16 @@
Вы должны сохранить эти файлы перед началом операции.
- Переключить
+ Switch
Для этого действия требуется TortoiseSVN
- Обновить
+ Update
- Обновить до версии
+ Update до ревизии
Благодарим Вас за участие! Вы всё ещё можете отказаться с помощью настроек SharpDevelop.
@@ -785,6 +878,21 @@
Я хотел бы принимать участие - собирать и передавать данные об использовании
+
+ Вы всё ещё можете согласиться с помощью настроек SharpDevelop.
+
+
+ Я не хочу участвовать
+
+
+ Нам нужна ваша помощь! Для того чтобы улучшить SharpDevelop нам нужно знать какими возможностями вы чаще всего пользуетесь. SharpDevelop может собирать эту информацию и загружать автоматически.
+
+
+ Политика конфиденциальности
+
+
+ Показать собранные данные
+
Редактировать колонки и строки таблицы
@@ -842,6 +950,9 @@
XAML
+
+ Расширенная подсветка
+
Файл не может быть записан в текущей кодировке ${encoding} без потери данных.
@@ -1014,6 +1125,9 @@
Параметры
+
+ Остановить всё журналирование
+
Остановить журналирование
@@ -1062,6 +1176,9 @@
Пожалуйста, выберите Узел Дерева
+
+ Вы должны выбрать узел в каком-либо дереве; поиск начнется с этого узла
+
Имя
@@ -1107,6 +1224,9 @@
Версия
+
+ Автоматически получать COM свойства
+
Панели
@@ -1304,6 +1424,18 @@
Ожидание запуска приложения
+
+ Анализ качества кода
+
+
+ Автоматически форматировать код
+
+
+ Вы уверены, что хотите сбросить все заданные ранее настройки форматирования?
+
+
+ Сбросить к:
+
Вставка ссылки на явный метод; чтобы вставить новую заглушку метода ещё раз нажмите клавишу TAB или Enter.
@@ -1419,9 +1551,15 @@
Курсив
+
+ Эта версия настроек не поддерживается!
+
Значение
+
+ Сбросить на настройки по-умолчанию
+
Пример
@@ -1771,9 +1909,39 @@
Отладка
+
+ Включить декомпилятор
+
+
+ Полное имя исключения
+
+
+ Остановиться на
+
+
+ Выберите исключения, на которые будет реагировать отладчик
+
+
+ Исключения
+
+
+ Перешагивать, если код не содержит отладочной информации
+
+
+ Перешагивать через однострочные свойства
+
+
+ Запретить JIT оптимизации
+
+
+ Запретить NGEN оптимизации
+
Символы
+
+ Отладка без исходников
+
Заголовок
@@ -1828,6 +1996,9 @@
Переносить длинные строки
+
+ Параметры построения и запуска
+
Неверный путь к указанному проекту
@@ -1849,6 +2020,9 @@
Установки
+
+ Показать список ошибок, если постороение завершилось с ошибками
+
В работе:
@@ -1927,6 +2101,9 @@
Вырезать/копировать всю строку, если ничего не выделено
+
+ Включить виртуальные пробелы
+
Прятать курсор мыши во время набора текста
@@ -1966,6 +2143,9 @@
Автоматическая вставка шаблонов
+
+ Использовать умные отступы
+
Автодополнение кода
@@ -2017,12 +2197,18 @@
Показать линию каретки
+
+ Включить анимации
+
Показывать конец строки
Подсвечивать соответствующие фигурные скобки
+
+ Подсвечивать текущую строку
+
Выделенные символы
@@ -2197,6 +2383,9 @@
Целевая версия Framework:
+
+ Трактовать предупреждения как ошибки
+
Все
@@ -2248,6 +2437,9 @@
Удалить проверку переполнения integer
+
+ Форматирование кода
+
Конфигурация
@@ -2266,6 +2458,9 @@
Настройки запуска
+
+ Запуск внешней программы:
+
Запустить проект
@@ -2335,6 +2530,9 @@
Подписывание ВОдинЩелчок
+
+ Подпись ClickOnce приложения пока не реализована.
+
Подсказка к паролю:
@@ -2518,6 +2716,9 @@
Добавить
+
+ Дополнительно
+
< Назад
@@ -2842,6 +3043,9 @@
SharpDevelop не может найти FxCop. Пожалуйста, выберите в настройках SharpDevelop установочную папку FxCop
+
+ Не удалось прочитать файл лога FxCop:
+
Mono не установлена.
@@ -2854,6 +3058,9 @@
Анализ кода
+
+ Проверить текущий проект с помощью FxCop
+
Проверить FxCop-ом
@@ -2875,6 +3082,9 @@
Добавить/Удалить правило сборки
+
+ Не удалось найти FxCop - Убедитесь, что FxCop установлен.
+
Выбрать папку, содержащую правило сборки:
@@ -2908,9 +3118,15 @@
Непокрытый код
+
+ Код частично покрыт тестами
+
Столбец
+
+ Содержимое
+
Параметры экрана
@@ -2980,6 +3196,9 @@
Связать конкретные модули .NET
+
+ Генерировать отладочную информацию
+
Расположение файлов библиотек.
@@ -2989,9 +3208,18 @@
Препроцессор
+
+ Определить переменную препроцессора
+
Расположение заголовочных файлов
+
+ Сбросить все переменные препроцессора
+
+
+ Сбросить следущие переменные препроцессора
+
Символ
@@ -3019,6 +3247,9 @@
XML-документ
+
+ Не удалось найти NAnt '{0}'. Пожалуйсте укажите путь к NAnt в настройках SharpDevelop.
+
Построение NAnt остановлено.
@@ -3094,6 +3325,9 @@
Остановить NAnt
+
+ Не выбран проект для отладки.
+
Тесты
@@ -3175,6 +3409,9 @@
Макет отладки
+
+ Расположение по-умолчанию
+
<Правка>
@@ -3278,6 +3515,9 @@
Файл сохранен
+
+ Выделить файл окне проектов
+
Из VB.NET в C#
@@ -3541,6 +3781,9 @@
Перейти
+
+ Пространство имен содержит недопустимые символы. Пространство имен может содержать только буквы, цифры и символ подчеркивания.
+
Пространство имён:
@@ -3765,12 +4008,21 @@
Загрузка ${Filename}...
+
+ Закрыть решение
+
Держать старое решение открытым
Перезагрузить решение
+
+ Файлы решения были изменены другой прогаммой.
+
+
+ Настройки форматирования для Решения
+
Преобразовать выбранные проекты в:
@@ -3852,6 +4104,36 @@
Тест
+
+ Не удалось запустить юнит-тесты. Не удалось найти файл '{0}'.
+
+
+ Веб
+
+
+ Приложение уже существует.
+
+
+ Не удалось обнаружить локальный сервер IIS или IIS Express.
+
+
+ Порт сервера:
+
+
+ Url проекта:
+
+
+ Веб-сервер
+
+
+ Не удалось подключиться отладчиком к процессу.
+
+
+ Использовать веб-сервер IIS Express
+
+
+ Использовать локальный веб-сервер IIS
+
Добавить расширения
@@ -4051,6 +4333,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Расширение .NET Framework
+
+ WiX не установлен. Пожалуйста, скачайте WiX с сайта http://wixtoolset.org/
+
Различия не обнаружены.
@@ -4219,6 +4504,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Пространства имён
+
+ Найдено 0 совпадений по XPath запросу.
+
Префикс
@@ -4234,9 +4522,30 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
XPath:
+
+ Совпадение
+
Вывод XSLT
+
+ Не удалось найти ILSpy в указанном месете, или у SharpDevelop не достаточно прав для доступа к нему.
+
+
+ Путь к ILSpy не указан.
+
+
+ Открыть IlSpy
+
+
+ Эта возможность требует наличия ILSpy. Если у вас он еще не установлен, вы можете бесплатно скачать его здесь:
+
+
+ Полный путь к IlSpy.exe
+
+
+ Изменить путь к ILSpy
+
Невозможно загрузить конфигурацию внешнего инструмента
@@ -4294,6 +4603,15 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Вы действительно хотите отменить изменения?
+
+ локальная переменная
+
+
+ пространство имен
+
+
+ параметр
+
Сохранить текущие изменения?
@@ -4330,6 +4648,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Закладки
+
+ Добавить в рабочее пространство
+
Назад
@@ -4360,6 +4681,15 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Ничего не найдено.
+
+ Открыть сборку
+
+
+ Открыть сборку из файла...
+
+
+ Открыть сборку из GAC...
+
Классы
@@ -4369,6 +4699,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Показывать вывод из:
+
+ Перенос текста
+
+
+ Добавить выражения для наблюдения
+
Точки останова
@@ -4381,6 +4717,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Язык
+
+ Модуль
+
Показать имена аргументов
@@ -4390,6 +4729,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Показывать внешние методы
+
+ Показать номера строк
+
+
+ Показать имена модулей
+
Вопрос
@@ -4399,6 +4744,15 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Стоп-точка
+
+ Сработала точка останова!
+
+
+ Сработала точка останова на строке {0} в {1}.
+
+
+ Сработала точка останова на строке {0} в {1} так как {2}
+
Условие
@@ -4411,6 +4765,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Убрать точку останова
+
+ Редактировать условие...
+
Включить точку останова
@@ -4432,9 +4789,15 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Консоль
+
+ Отладить исполняемый файл
+
Прервать
+
+ Остановиться на ${ExceptionName}
+
Продолжить
@@ -4450,6 +4813,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
как {0} в {1}:строка {2}
+
+ Исключения {0} было выброшено:
+
Показать подробности об Исключении
@@ -4474,6 +4840,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Время
+
+ Показать/Скрыть кнопки для изменения масштаба
+
Локальные переменные
@@ -4483,6 +4852,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Основной класс
+
+ Вы не можете видеть значение локальных переменных, если отладчик запущен.
+
Невозможно преобразовать {0} в {1}
@@ -4495,6 +4867,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Копировать значение в буфер обмена
+
+ Имя
+
Закрытые члены
@@ -4504,6 +4879,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Частные члены
+
+ Private Static члены
+
Показать полный текст ошибки...
@@ -4513,6 +4891,33 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Статичные члены
+
+ Тип
+
+
+ Значение
+
+
+ Память
+
+
+ Адрес {0} не найден!
+
+
+ Размер в байтах:
+
+
+ Перейти к адресу:
+
+
+ Следующий виртуальный адрес
+
+
+ Предыдущий виртуальный адрес
+
+
+ Обновить текущий адрес
+
Загруженные модули
@@ -4555,6 +4960,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Установить текущий оператор
+
+ Вы действительно хотите остановить отладку?
+
Отсоединить от процесса или завершить его?
@@ -4567,9 +4975,15 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Невозможно сделать шаг, так как отсутствует активная выбранная функция
+
+ Вы не можете переключиться на поток, с недоступным фреймом исполнения.
+
Вы не можете переключать потоки пока включён отладчик.
+
+ Вы не можете переключиться на поток в декомпилированном коде, без включения декомпилятора.
+
Заморозить
@@ -4598,10 +5012,13 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Переключатель потоков
- Наблюдатель
+ Наблюдение
- Добавить Наблюдателя
+ Добавить наблюдение
+
+
+ Введите выражения для наблюдения:
Неправильное расширение: {0}
@@ -4613,7 +5030,7 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Удалить все
- Удалить наблюдателя
+ Удалить наблюдение
Просмотр определения
@@ -4720,6 +5137,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
По файлам
+
+ Разделить по проектам
+
+
+ Разделить по проектам и файлам
+
Показать последние результаты поиска
@@ -4795,6 +5218,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Проверка варианта '${TestCase}' не удалась.
+
+ Тест '${TestCase}' не был запущен.
+
Загрузить сборку...
@@ -4822,6 +5248,33 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Открыть папку в Проводнике
+
+ Открыть командную строку в этой папке
+
+
+ выберите целевой фреймворк
+
+
+ Не удалось найти инструменты Portable Class Library.
+
+
+ Подмножество .NET Portable
+
+
+ Необходимо выбрать два или более фреймворка.
+
+
+ Выбранный профиль:
+
+
+ Выбрать профиль Portable Library
+
+
+ Для установки инструментов Portable Class Library без установки Visual Studio, необходимо скачать файл (PortableLibraryTools.exe) и запустить его из командной строки с ключом /buildmachine.
+
+
+ Свернуть всё
+
Добавить существующие файлы
@@ -4849,6 +5302,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Добавить ссылку
+
+ Добавить ссылку на сервис
+
Добавить веб-ссылку
@@ -4927,6 +5383,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Новая папка решения
+
+ Этот проект не является веб-проектом.
+
Открыть
@@ -4945,9 +5404,15 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Запустить проект
+
+ Запустить проект без отладки
+
Использовать как StartUp проект
+
+ Просмотр в браузере
+
Новая папка
@@ -5068,6 +5533,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Нецифровой символ
+
+ Не пробельный символ
+
+
+ Нежадная звезда
+
Символ пробела
@@ -5086,9 +5557,15 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Невозможно загрузить ресурс
+
+ Ошибка: Генератор кода ресурсов пропустил файл "{0}", так как сгенерированный класс конфликтует с существующим классом "{1}".
+
Генератор кода ресурсов: невозможно создать свойство для ресурса '{0}'.
+
+ Комментарий
+
Содержание
@@ -5101,9 +5578,18 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Копировать имя ресурса
+
+ Редактировать комментарий
+
+
+ Введите новый текст комменария:
+
Переименовать
+
+ Показать как Hex дамп
+
Тип
@@ -5113,6 +5599,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Все файлы (*.*)
+
+ Все известные расширения
+
Файлы сборок (*.exe;*.dll)
@@ -5200,6 +5689,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Основные классы ${Name}
+
+ Действие не может быть выполнено, так как ваш код содержит ошибки:
+
Элемент не может быть переименован, поскольку он не определён в пользовательском коде.
@@ -5266,6 +5758,12 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Перейти к свойству
+
+ Реализовать методы абстрактного класса
+
+
+ Реализовать интерфейс
+
Реализовать интерфейс (явно)
@@ -5284,6 +5782,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Перегрузки ${Name}
+
+ Часть класса ${Name}
+
Ссылки на ${Name}
@@ -5332,6 +5833,9 @@ Microsoft.Tools.WindowsInstallerXml.Extensions.NetFxCompiler, WixNetFxExtension<
Все известные форматы проектов
+
+ Текущая версия SharpDevelop не может загружать проекты, созданные в Visual Studio .NET 2003 (или ранее). Попробуйте использовать SharpDevelop 3.2 для преобразования в современный формат или создайте новый проект, использую существующие исходные файлы.
+
Не удалось сохранить {0}:\n{1}
@@ -5375,6 +5879,9 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Вставить поле
+
+ Показать превью
+
Видимость раздела
@@ -5492,6 +5999,9 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Прямоугольник
+
+ Таблица
+
Надпись
@@ -5525,6 +6035,18 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Тип отчёта
+
+ Выберите столбец для группировки
+
+
+ Группировка
+
+
+ Верстка списком
+
+
+ Табличная верстка
+
Перемещаемая модель данных
@@ -5612,6 +6134,9 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Открыть решение
+
+ Удалить проект из списка недавних
+
Стартовая страница
@@ -5639,6 +6164,9 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Конфигурация элемента
+
+ Класс, который наследуется от ConfigurationElementCollection
+
Конфигурация коллекции элементов
@@ -5708,6 +6236,15 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Файл сборки NAnt
+
+ PRISM ViewModel (Unity)
+
+
+ Создать View для модуля PRISM.
+
+
+ PRISM View (Unity)
+
Добавить '#if TEST ... #endif'
@@ -5744,6 +6281,12 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Пустой файл ресурсов
+
+ Параметры плагина
+
+
+ Панель настроек
+
Класс следующий патерну Singleton.
@@ -5924,6 +6467,21 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Gtk#-приложение
+
+ Portable Class Library
+
+
+ Приложение PRISM - маленькое (Unity)
+
+
+ Создайть приложение PRISM вместе с Bootstrapper и Infrastructure.
+
+
+ Приложение PRISM (Unity)
+
+
+ Создать модуль PRISM, вместе с соотвествующими View и ViewModel
+
Проект для создания MSI-инсталлятора.
@@ -6084,7 +6642,7 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Не удалось выполнить действие, поскольку отлаживаются некоторые процессы.
- Невозможно запустить отладчик SharpDevelop, так как ядро отладчика включено. Для выключения ядра отладчика, удалите ключ "/debug" из файла Boot.ini и перезапустите свой компьютер.
+ Невозможно запустить отладчик SharpDevelop, так как включен отладчик ядра. Для выключения отладчика ядра, удалите ключ "/debug" из файла Boot.ini и перезапустите свой компьютер.
Отладка программ .NET Framework 1.0 не поддерживается.
@@ -6101,6 +6659,9 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Удалить все точки останова
+
+ Запустить последний билд
+
Запустить без отладчика
@@ -6110,12 +6671,21 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Шаг в
+
+ Войти
+
Шаг вперёд
Шаг вперёд
+
+ Перешагнуть
+
+
+ Перешагнуть
+
Остановить процесс
@@ -6260,6 +6830,9 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Создать новый файл
+
+ Проект...
+
Решение...
@@ -6467,6 +7040,9 @@ SharpDevelop 2 иначе компилировал ресурсы: имя рес
Параметры проекта...
+
+ Рефакторинг
+
Собрать текущий проект
diff --git a/data/resources/languages/LanguageDefinition.xml b/data/resources/languages/LanguageDefinition.xml
index 6df07f1a168..dd41db243ef 100644
--- a/data/resources/languages/LanguageDefinition.xml
+++ b/data/resources/languages/LanguageDefinition.xml
@@ -14,9 +14,9 @@
-
+
-
+
diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/CSharpDesignerGenerator.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/CSharpDesignerGenerator.cs
index 5045d6fc8f5..6b68df5d3cb 100644
--- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/CSharpDesignerGenerator.cs
+++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/CSharpDesignerGenerator.cs
@@ -297,9 +297,14 @@ string GenerateField(CodeMemberField newField)
void CreateField(CodeMemberField newField)
{
- // insert new field below InitializeComponents()
-
- var bodyRegion = initializeComponents.BodyRegion;
+ // insert new field below the last field or InitializeComponents()
+ IField field = null;
+ if (formClass != null) {
+ field = formClass.Fields.LastOrDefault(f => string.Equals(f.Region.FileName,
+ initializeComponents.Region.FileName,
+ StringComparison.OrdinalIgnoreCase));
+ }
+ var bodyRegion = field != null ? field.BodyRegion : initializeComponents.BodyRegion;
DocumentScript script = GetScript(bodyRegion.FileName);
string newline = DocumentUtilities.GetLineTerminator(script.OriginalDocument, bodyRegion.BeginLine);
string indentation = DocumentUtilities.GetIndentation(script.OriginalDocument, bodyRegion.BeginLine);
diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/CSharpEventBindingService.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/CSharpEventBindingService.cs
index b7c635c055a..981092adf9f 100644
--- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/CSharpEventBindingService.cs
+++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/CSharpEventBindingService.cs
@@ -24,10 +24,14 @@
using System.Windows.Threading;
using ICSharpCode.Core;
using ICSharpCode.FormsDesigner.Gui.OptionPanels;
+using ICSharpCode.NRefactory;
using ICSharpCode.NRefactory.CSharp;
+using ICSharpCode.NRefactory.Editor;
using ICSharpCode.NRefactory.TypeSystem;
using ICSharpCode.SharpDevelop;
-using ICSharpCode.SharpDevelop.Gui;
+using ICSharpCode.SharpDevelop.Editor;
+using ICSharpCode.SharpDevelop.Project;
+using ICSharpCode.SharpDevelop.Refactoring;
using CSharpBinding.Refactoring;
namespace CSharpBinding.FormsDesigner
@@ -144,18 +148,28 @@ void InsertEventHandlerInternal(string methodName, IEvent evt)
var primary = loader.GetPrimaryTypeDefinition();
var evtHandler = primary.GetMethods(m => m.Name == methodName, GetMemberOptions.IgnoreInheritedMembers).FirstOrDefault();
if (evtHandler == null) {
- generator.InsertEventHandler(primary, methodName, evt, true);
- }
- else {
+ var insertionType = GeneralOptionsPanel.InsertTodoComment ? InsertEventHandlerBodyKind.TodoComment : InsertEventHandlerBodyKind.Nothing;
+ generator.InsertEventHandler(primary, methodName, evt, true, insertionType);
+ } else {
CSharpBinding.Parser.CSharpFullParseInformation parseInfo;
var node = evtHandler.GetDeclaration(out parseInfo) as MethodDeclaration;
+ var fileName = new FileName(evtHandler.Region.FileName);
+ var fileContentFinder = new ParseableFileContentFinder();
+
if (node != null && !node.Body.IsNull) {
var location = node.Body.FirstChild.StartLocation;
var firstStatement = node.Body.Children.OfType().FirstOrDefault();
- if (firstStatement != null)
+
+ if (firstStatement == null) {
+ var fileContent = fileContentFinder.Create(fileName);
+ var document = new ReadOnlyDocument(fileContent);
+ var offset = document.GetOffset(new TextLocation(location.Line + 1, 1));
+ var length = DocumentUtilities.GetWhitespaceAfter(fileContent, offset).Length;
+ location = new TextLocation(location.Line + 1, length + 1);
+ } else {
location = firstStatement.StartLocation;
- // TODO : does not jump correctly...
- SD.FileService.JumpToFilePosition(new FileName(evtHandler.Region.FileName), location.Line, location.Column);
+ }
+ SD.FileService.JumpToFilePosition(fileName, location.Line, location.Column);
}
}
}
diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/ICSharpDesignerLoaderContext.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/ICSharpDesignerLoaderContext.cs
index dadf5f5a5af..97e2ebff6af 100644
--- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/ICSharpDesignerLoaderContext.cs
+++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/FormsDesigner/ICSharpDesignerLoaderContext.cs
@@ -31,6 +31,7 @@ public interface ICSharpDesignerLoaderContext
CSharpFullParseInformation GetPrimaryFileParseInformation();
ICompilation GetCompilation();
IDocument GetDocument(FileName fileName);
+ /// if lineNumber = 0 no jump is performed, but the active view content changes.
void ShowSourceCode(int lineNumber = 0);
}
}
diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Parser/Parser.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Parser/Parser.cs
index 047c676cd6d..21c93461906 100644
--- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Parser/Parser.cs
+++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Parser/Parser.cs
@@ -38,7 +38,6 @@
using ICSharpCode.SharpDevelop.Editor.Search;
using ICSharpCode.SharpDevelop.Parser;
using ICSharpCode.SharpDevelop.Project;
-using ICSharpCode.SharpDevelop.Refactoring;
namespace CSharpBinding.Parser
{
@@ -51,38 +50,6 @@ public bool CanParse(string fileName)
return Path.GetExtension(fileName).Equals(".CS", StringComparison.OrdinalIgnoreCase);
}
- /*
- void RetrieveRegions(ISyntaxTree cu, ICSharpCode.NRefactory.Parser.SpecialTracker tracker)
- {
- for (int i = 0; i < tracker.CurrentSpecials.Count; ++i) {
- ICSharpCode.NRefactory.PreprocessingDirective directive = tracker.CurrentSpecials[i] as ICSharpCode.NRefactory.PreprocessingDirective;
- if (directive != null) {
- if (directive.Cmd == "#region") {
- int deep = 1;
- for (int j = i + 1; j < tracker.CurrentSpecials.Count; ++j) {
- ICSharpCode.NRefactory.PreprocessingDirective nextDirective = tracker.CurrentSpecials[j] as ICSharpCode.NRefactory.PreprocessingDirective;
- if (nextDirective != null) {
- switch (nextDirective.Cmd) {
- case "#region":
- ++deep;
- break;
- case "#endregion":
- --deep;
- if (deep == 0) {
- cu.FoldingRegions.Add(new FoldingRegion(directive.Arg.Trim(), DomRegion.FromLocation(directive.StartPosition, nextDirective.EndPosition)));
- goto end;
- }
- break;
- }
- }
- }
- end: ;
- }
- }
- }
- }
- */
-
public ITextSource GetFileContent(FileName fileName)
{
return SD.FileService.GetFileContent(fileName);
@@ -94,7 +61,6 @@ public ParseInformation Parse(FileName fileName, ITextSource fileContent, bool f
var csharpProject = parentProject as CSharpProject;
CSharpParser parser = new CSharpParser(csharpProject != null ? csharpProject.CompilerSettings : null);
- parser.GenerateTypeSystemMode = !fullParseInformationRequested;
SyntaxTree cu = parser.Parse(fileContent, fileName);
cu.Freeze();
diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/CSharpCodeGenerator.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/CSharpCodeGenerator.cs
index 1ec12f9a3a2..a7880dc1d61 100644
--- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/CSharpCodeGenerator.cs
+++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/CSharpCodeGenerator.cs
@@ -66,7 +66,7 @@ public override void AddReturnTypeAttribute(IMethod target, IAttribute attribute
AddAttribute(target.Region, attribute, "return");
}
- public override void InsertEventHandler(ITypeDefinition target, string name, IEvent eventDefinition, bool jumpTo)
+ public override void InsertEventHandler(ITypeDefinition target, string name, IEvent eventDefinition, bool jumpTo, InsertEventHandlerBodyKind bodyKind = InsertEventHandlerBodyKind.ThrowNotImplementedException)
{
IUnresolvedTypeDefinition match = null;
@@ -103,15 +103,30 @@ public override void InsertEventHandler(ITypeDefinition target, string name, IEv
decl.Parameters.AddRange(param);
using (Script script = context.StartScript()) {
- // FIXME : will not work properly if there are no members.
+ int eolLen = 0;
if (last == match) {
- throw new NotImplementedException();
- // TODO InsertWithCursor not implemented!
- //script.InsertWithCursor("Insert event handler", Script.InsertPosition.End, decl).RunSynchronously();
+ eolLen = 2;
+ script.AddTo((TypeDeclaration)node, decl);
} else {
- // TODO does not jump correctly...
script.InsertAfter(node, decl);
- editor.JumpTo(throwStmt.StartLocation.Line, throwStmt.StartLocation.Column);
+ }
+ switch (bodyKind) {
+ case InsertEventHandlerBodyKind.TodoComment:
+ Comment comment = new Comment(" TODO: Implement " + name);
+ script.Replace(throwStmt, comment);
+ script.Select(comment);
+ break;
+ case InsertEventHandlerBodyKind.Nothing:
+ var segment = script.GetSegment(throwStmt);
+ if (script is DocumentScript && eolLen > 0) {
+ eolLen = ((DocumentScript)script).CurrentDocument.GetLineByOffset(segment.Offset).DelimiterLength;
+ }
+ script.RemoveText(segment.Offset, segment.Length - eolLen);
+ script.Select(segment.Offset, segment.Offset);
+ break;
+ case InsertEventHandlerBodyKind.ThrowNotImplementedException:
+ script.Select(throwStmt);
+ break;
}
}
}
diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/EditorScript.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/EditorScript.cs
index 02f9e05f704..30099aa233a 100644
--- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/EditorScript.cs
+++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/EditorScript.cs
@@ -81,6 +81,16 @@ public override void Select(AstNode node)
editor.Select(startOffset, endOffset - startOffset);
}
+ public override void Select(int startOffset, int endOffset)
+ {
+ editor.Select(Math.Min(startOffset, endOffset), Math.Abs(endOffset - startOffset));
+ }
+
+ public override void Select(TextLocation start, TextLocation end)
+ {
+ Select(editor.Document.GetOffset(start), editor.Document.GetOffset(end));
+ }
+
public override Task Link(params AstNode[] nodes)
{
var segs = nodes.Select(node => GetSegment(node)).ToArray();
diff --git a/src/AddIns/BackendBindings/Python/PyWalker/AssemblyInfo.cs b/src/AddIns/BackendBindings/Python/PyWalker/AssemblyInfo.cs
deleted file mode 100644
index c252cee703e..00000000000
--- a/src/AddIns/BackendBindings/Python/PyWalker/AssemblyInfo.cs
+++ /dev/null
@@ -1,49 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-#region Using directives
-
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-#endregion
-
-// General Information about an assembly is controlled through the following
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
-[assembly: AssemblyTitle("PyWalker")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("PyWalker")]
-[assembly: AssemblyCopyright("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// This sets the default COM visibility of types in the assembly to invisible.
-// If you need to expose a type to COM, use [ComVisible(true)] on that type.
-[assembly: ComVisible(false)]
-
-// The assembly version has following format :
-//
-// Major.Minor.Build.Revision
-//
-// You can specify all the values or you can use the default the Revision and
-// Build Numbers by using the '*' as shown below:
-[assembly: AssemblyVersion("0.1")]
diff --git a/src/AddIns/BackendBindings/Python/PyWalker/CodeDomVisitor.cs b/src/AddIns/BackendBindings/Python/PyWalker/CodeDomVisitor.cs
deleted file mode 100644
index 378ba467c9d..00000000000
--- a/src/AddIns/BackendBindings/Python/PyWalker/CodeDomVisitor.cs
+++ /dev/null
@@ -1,441 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.CodeDom;
-using System.Collections;
-using System.Reflection;
-using System.Text;
-
-namespace PyWalker
-{
- ///
- /// Visits the code dom generated by PythonProvider.
- ///
- public class CodeDomVisitor
- {
- IOutputWriter writer;
-
- public CodeDomVisitor(IOutputWriter writer)
- {
- this.writer = writer;
- }
-
- public void Visit(CodeCompileUnit unit)
- {
- VisitCodeCompileUnit(unit);
- }
-
- void VisitCodeCompileUnit(CodeCompileUnit unit)
- {
- WriteLine("VisitCodeCompileUnit");
-
- foreach (CodeNamespace ns in unit.Namespaces) {
- VisitCodeNamespace(ns);
- }
- }
-
- void VisitCodeNamespace(CodeNamespace ns)
- {
- WriteLine("VisitCodeNamespace: " + ns.Name);
-
- foreach (CodeNamespaceImport import in ns.Imports) {
- VisitCodeNamespaceImport(import);
- }
-
- using (IDisposable indentLevel = Indentation.IncrementLevel()) {
- foreach (CodeTypeDeclaration type in ns.Types) {
- VisitCodeTypeDeclaration(type);
- }
- }
- }
-
- void VisitCodeNamespaceImport(CodeNamespaceImport import)
- {
- WriteLine("VisitCodeNamespaceImport: " + import.Namespace);
- }
-
- void VisitCodeTypeDeclaration(CodeTypeDeclaration type)
- {
- WriteLine("VisitCodeTypeDeclaration: " + type.Name);
- WriteLine(MemberAttributesToString(type.Attributes));
-
- WriteLine("UserData: " + UserDataKeysToString(type.UserData));
-
- WriteLine("VisitCodeTypeDeclaration: Custom attributes");
- foreach (CodeAttributeDeclaration attributeDeclaration in type.CustomAttributes) {
- VisitCodeAttributeDeclaration(attributeDeclaration);
- }
-
- WriteLine("TypeAttributes: " + TypeAttributesToString(type.TypeAttributes));
-
- foreach (CodeTypeParameter parameter in type.TypeParameters) {
- VisitCodeTypeParameter(parameter);
- }
-
- using (IDisposable indentLevel = Indentation.IncrementLevel()) {
- foreach (CodeTypeMember member in type.Members) {
- CodeMemberMethod method = member as CodeMemberMethod;
- CodeMemberField field = member as CodeMemberField;
- if (method != null) {
- VisitCodeMemberMethod(method);
- } else if (field != null) {
- VisitCodeMemberField(field);
- } else {
- WriteLine("Unhandled type member: " + member.GetType().Name);
- }
- }
- }
- }
-
- void VisitCodeTypeParameter(CodeTypeParameter parameter)
- {
- WriteLine("VisitCodeTypeParameter: " + parameter.Name);
- }
-
- string TypeAttributesToString(TypeAttributes typeAttributes)
- {
- return typeAttributes.ToString();
- }
-
- void VisitCodeAttributeDeclaration(CodeAttributeDeclaration attributeDeclaration)
- {
- WriteLine("VisitCodeAttributeDeclaration: " + attributeDeclaration.Name);
- }
-
- void VisitCodeMemberMethod(CodeMemberMethod method)
- {
- WriteLine("VisitCodeMemberMethod: " + method.Name);
- WriteLine(MemberAttributesToString(method.Attributes));
-
- WriteLine("UserData: " + UserDataKeysToString(method.UserData));
- foreach (CodeParameterDeclarationExpression param in method.Parameters) {
- VisitCodeParameterDeclarationExpression(param);
- }
-
- using (IDisposable indentLevel = Indentation.IncrementLevel()) {
- WriteLine("Method.Statements.Count: " + method.Statements.Count);
- foreach (CodeStatement statement in method.Statements) {
- VisitCodeStatement(statement);
- }
- }
- }
-
- void VisitCodeStatement(CodeStatement statement)
- {
- WriteLine("VisitCodeStatement: " + statement.GetType().Name);
- CodeVariableDeclarationStatement codeVariableDeclarationStatement = statement as CodeVariableDeclarationStatement;
- CodeAssignStatement codeAssignStatement = statement as CodeAssignStatement;
- CodeConditionStatement codeConditionStatement = statement as CodeConditionStatement;
- CodeIterationStatement codeIterationStatement = statement as CodeIterationStatement;
- CodeExpressionStatement codeExpressionStatement = statement as CodeExpressionStatement;
- CodeTryCatchFinallyStatement codeTryCatchFinallyStatement = statement as CodeTryCatchFinallyStatement;
- if (codeVariableDeclarationStatement != null) {
- VisitCodeVariableDeclarationStatement(codeVariableDeclarationStatement);
- } else if (codeAssignStatement != null) {
- VisitCodeAssignStatement(codeAssignStatement);
- } else if (codeConditionStatement != null) {
- VisitCodeConditionStatement(codeConditionStatement);
- } else if (codeIterationStatement != null) {
- VisitCodeIterationStatement(codeIterationStatement);
- } else if (codeExpressionStatement != null) {
- VisitCodeExpressionStatement(codeExpressionStatement);
- } else if (codeTryCatchFinallyStatement != null) {
- VisitCodeTryCatchFinallyStatement(codeTryCatchFinallyStatement);
- } else {
- WriteLine("Unhandled statement: " + statement.GetType().Name);
- }
- }
-
- void VisitCodeAssignStatement(CodeAssignStatement assignStatement)
- {
- WriteLine("VisitCodeAssignmentStatement");
- WriteLine("Left follows");
- VisitCodeExpression(assignStatement.Left);
- WriteLine("Right follows");
- VisitCodeExpression(assignStatement.Right);
- }
-
- void VisitCodeParameterDeclarationExpression(CodeParameterDeclarationExpression expression)
- {
- WriteLine("VisitCodeParameterDeclarationExpression: " + expression.Name);
- WriteLine("BaseType: " + expression.Type.BaseType);
- }
-
- void VisitCodeVariableDeclarationStatement(CodeVariableDeclarationStatement codeVariableDeclarationStatement)
- {
- WriteLine("VisitCodeVariableDeclarationStatement: " + codeVariableDeclarationStatement.Name);
- WriteLine("BaseType: " + codeVariableDeclarationStatement.Type.BaseType);
- WriteLine("UserData: " + UserDataKeysToString(codeVariableDeclarationStatement.UserData));
- WriteLine("InitExpression follows");
- VisitCodeExpression(codeVariableDeclarationStatement.InitExpression);
- }
-
- void VisitCodeExpression(CodeExpression expression)
- {
- if (expression != null) {
- WriteLine("VisitCodeExpression: " + expression.GetType().Name);
- CodePrimitiveExpression primitiveExpression = expression as CodePrimitiveExpression;
- CodeFieldReferenceExpression fieldReferenceExpression = expression as CodeFieldReferenceExpression;
- CodeThisReferenceExpression thisReferenceExpression = expression as CodeThisReferenceExpression;
- CodeObjectCreateExpression createExpression = expression as CodeObjectCreateExpression;
- CodeBinaryOperatorExpression binaryExpression = expression as CodeBinaryOperatorExpression;
- CodeMethodReferenceExpression methodReferenceExpression = expression as CodeMethodReferenceExpression;
- CodeMethodInvokeExpression methodInvokeExpression = expression as CodeMethodInvokeExpression;
- CodeVariableReferenceExpression variableReferenceExpression = expression as CodeVariableReferenceExpression;
- if (primitiveExpression != null) {
- VisitCodePrimitiveExpression(primitiveExpression);
- } else if (fieldReferenceExpression != null) {
- VisitCodeFieldReferenceExpression(fieldReferenceExpression);
- } else if (thisReferenceExpression != null) {
- VisitCodeThisReferenceExpression(thisReferenceExpression);
- } else if (createExpression != null) {
- VisitObjectCreateExpression(createExpression);
- } else if (binaryExpression != null) {
- VisitCodeBinaryOperatorExpression(binaryExpression);
- } else if (methodReferenceExpression != null) {
- VisitCodeMethodReferenceExpression(methodReferenceExpression);
- } else if (methodInvokeExpression != null) {
- VisitCodeMethodInvokeExpression(methodInvokeExpression);
- } else if (variableReferenceExpression != null) {
- VisitCodeVariableReferenceExpression(variableReferenceExpression);
- }
- } else {
- WriteLine("VisitCodeExpression: Null");
- }
- }
-
- void VisitCodePrimitiveExpression(CodePrimitiveExpression expression)
- {
- WriteLine("VisitCodePrimitiveExpression: " + expression.Value);
- }
-
- void VisitCodeFieldReferenceExpression(CodeFieldReferenceExpression expression)
- {
- WriteLine("VisitFieldReferenceExpression: " + expression.FieldName);
- WriteLine("Target object follows");
- VisitCodeExpression(expression.TargetObject);
- }
-
- void VisitCodeThisReferenceExpression(CodeThisReferenceExpression expression)
- {
- WriteLine("VisitCodeThisReferenceExpression");
- WriteLine("UserData: " + UserDataKeysToString(expression.UserData));
- }
-
- void VisitCodeMemberField(CodeMemberField field)
- {
- WriteLine("VisitCodeMemberField: " + field.Name);
- WriteLine("UserData: " + UserDataKeysToString(field.UserData));
- WriteLine(MemberAttributesToString(field.Attributes));
- WriteLine("InitExpression follows");
- VisitCodeExpression(field.InitExpression);
- }
-
- void VisitObjectCreateExpression(CodeObjectCreateExpression createExpression)
- {
- WriteLine("VisitObjectCreateExpression: Type: " + createExpression.CreateType.BaseType);
- foreach (CodeExpression expression in createExpression.Parameters) {
- VisitCodeExpression(expression);
- }
- }
-
- void VisitCodeConditionStatement(CodeConditionStatement conditionStatement)
- {
- WriteLine("VisitCodeConditionStatement");
-
- WriteLine("Condition follows");
- using (IDisposable indentLevel = Indentation.IncrementLevel()) {
- VisitCodeExpression(conditionStatement.Condition);
- }
-
- WriteLine("TrueStatements follow");
- using (IDisposable indentLevel = Indentation.IncrementLevel()) {
- foreach (CodeStatement statement in conditionStatement.TrueStatements) {
- VisitCodeStatement(statement);
- }
- }
-
- WriteLine("FalseStatements follow");
- using (IDisposable indentLevel = Indentation.IncrementLevel()) {
- foreach (CodeStatement statement in conditionStatement.FalseStatements) {
- VisitCodeStatement(statement);
- }
- }
- }
-
- void VisitCodeBinaryOperatorExpression(CodeBinaryOperatorExpression expression)
- {
- WriteLine("VisitBinaryOperatorExpression: " + expression.Operator);
-
- WriteLine("Left follows");
- using (IDisposable currentLevel = Indentation.IncrementLevel()) {
- VisitCodeExpression(expression.Left);
- }
-
- WriteLine("Right follows");
- using (IDisposable currentLevel = Indentation.IncrementLevel()) {
- VisitCodeExpression(expression.Right);
- }
- }
-
- void VisitCodeIterationStatement(CodeIterationStatement statement)
- {
- WriteLine("VisitIterationStatement");
-
- WriteLine("Init statement follows");
- using (IDisposable currentLevel = Indentation.IncrementLevel()) {
- VisitCodeStatement(statement.InitStatement);
- }
-
- WriteLine("Increment statement follows");
- using (IDisposable currentLevel = Indentation.IncrementLevel()) {
- VisitCodeStatement(statement.IncrementStatement);
- }
-
- WriteLine("Test expression follows");
- using (IDisposable currentLevel = Indentation.IncrementLevel()) {
- VisitCodeExpression(statement.TestExpression);
- }
-
- WriteLine("Statements follow");
- using (IDisposable currentLevel = Indentation.IncrementLevel()) {
- foreach (CodeStatement currentStatement in statement.Statements) {
- VisitCodeStatement(currentStatement);
- }
- }
- }
-
- void VisitCodeMethodInvokeExpression(CodeMethodInvokeExpression expression)
- {
- WriteLine("VisitCodeMethodInvokeExpression");
- using (IDisposable currentLevel = Indentation.IncrementLevel()) {
- VisitCodeExpression(expression.Method);
- }
- }
-
- void VisitCodeMethodReferenceExpression(CodeMethodReferenceExpression expression)
- {
- WriteLine("VisitCodeMethodReferenceExpression: " + expression.MethodName);
- WriteLine("Target Object follows");
- using (IDisposable currentLevel = Indentation.IncrementLevel()) {
- VisitCodeExpression(expression.TargetObject);
- }
- }
-
- void VisitCodeExpressionStatement(CodeExpressionStatement statement)
- {
- WriteLine("VisitCodeExpressionStatement");
- using (IDisposable currentLevel = Indentation.IncrementLevel()) {
- VisitCodeExpression(statement.Expression);
- }
- }
-
- void VisitCodeVariableReferenceExpression(CodeVariableReferenceExpression expression)
- {
- WriteLine("VisitCodeVariableReferenceExpression: " + expression.VariableName);
- }
-
- void VisitCodeTryCatchFinallyStatement(CodeTryCatchFinallyStatement tryStatement)
- {
- WriteLine("VisitCodeTryCatchFinallyStatement");
- using (IDisposable currentLevel = Indentation.IncrementLevel()) {
- WriteLine("Try statements follow: Count: " + tryStatement.TryStatements.Count);
- foreach (CodeStatement statement in tryStatement.TryStatements) {
- VisitCodeStatement(statement);
- }
-
- WriteLine("Catch clauses follow: Count: " + tryStatement.CatchClauses.Count);
- foreach (CodeCatchClause catchClause in tryStatement.CatchClauses) {
- VisitCodeCatchClause(catchClause);
- }
-
- WriteLine("Finally statements follow: Count: " + tryStatement.FinallyStatements);
- foreach (CodeStatement statement in tryStatement.FinallyStatements) {
- VisitCodeStatement(statement);
- }
- }
- }
-
- void VisitCodeCatchClause(CodeCatchClause catchClause)
- {
- WriteLine("VisitCodeCatchClause");
- WriteLine("Exception caught: " + catchClause.CatchExceptionType.BaseType);
- WriteLine("Exception variable: " + catchClause.LocalName);
-
- WriteLine("Catch statements follow: Count: " + catchClause.Statements.Count);
- using (IDisposable currentLevel = Indentation.IncrementLevel()) {
- foreach (CodeStatement statement in catchClause.Statements) {
- VisitCodeStatement(statement);
- }
- }
- }
-
- string MemberAttributesToString(MemberAttributes attributes)
- {
- StringBuilder s = new StringBuilder();
- s.Append("Attributes: ");
-
- if ((attributes & MemberAttributes.Public) == MemberAttributes.Public) {
- s.Append("Public, ");
- }
- if ((attributes & MemberAttributes.Private) == MemberAttributes.Private) {
- s.Append("Private, ");
- }
- if ((attributes & MemberAttributes.Family) == MemberAttributes.Family) {
- s.Append("Family, ");
- }
- if ((attributes & MemberAttributes.Final) == MemberAttributes.Final) {
- s.Append("Final, ");
- }
-
- return s.ToString();
- }
-
- string UserDataKeysToString(IDictionary userData)
- {
- StringBuilder s = new StringBuilder();
- ICollection keys = userData.Keys;
- foreach (object o in keys) {
- string name = o as string;
- if (name != null) {
- s.Append(name);
- s.Append(", ");
- }
- }
- return s.ToString();
- }
-
- ///
- /// Writes a line and indents it to the current level.
- ///
- void WriteLine(string s)
- {
- writer.WriteLine(GetIndent() + s);
- }
-
- string GetIndent()
- {
- StringBuilder indent = new StringBuilder();
- for (int i = 0; i < Indentation.CurrentLevel; ++i) {
- indent.Append('\t');
- }
- return indent.ToString();
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PyWalker/Indentation.cs b/src/AddIns/BackendBindings/Python/PyWalker/Indentation.cs
deleted file mode 100644
index 988d9d63c95..00000000000
--- a/src/AddIns/BackendBindings/Python/PyWalker/Indentation.cs
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-
-namespace PyWalker
-{
- class Indentation : IDisposable
- {
- static int currentLevel;
-
- public static int CurrentLevel {
- get { return currentLevel; }
- }
-
- Indentation()
- {
- currentLevel++;
- }
-
- public void Dispose()
- {
- currentLevel--;
- }
-
- public static IDisposable IncrementLevel()
- {
- return new Indentation();
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PyWalker/MainForm.Designer.cs b/src/AddIns/BackendBindings/Python/PyWalker/MainForm.Designer.cs
deleted file mode 100644
index c0eedae1d84..00000000000
--- a/src/AddIns/BackendBindings/Python/PyWalker/MainForm.Designer.cs
+++ /dev/null
@@ -1,210 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-namespace PyWalker
-{
- partial class MainForm
- {
- ///
- /// Designer variable used to keep track of non-visual components.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Disposes resources used by the form.
- ///
- /// true if managed resources should be disposed; otherwise, false.
- protected override void Dispose(bool disposing)
- {
- if (disposing) {
- if (components != null) {
- components.Dispose();
- }
- }
- base.Dispose(disposing);
- }
-
- ///
- /// This method is required for Windows Forms designer support.
- /// Do not change the method contents inside the source code editor. The Forms designer might
- /// not be able to load this method if it was changed manually.
- ///
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- this.splitContainer = new System.Windows.Forms.SplitContainer();
- this.codeTextBox = new System.Windows.Forms.RichTextBox();
- this.runCSharpNRefactoryVisitor = new System.Windows.Forms.Button();
- this.runNRefactoryCSharpCodeDomVisitor = new System.Windows.Forms.Button();
- this.runCSharpToPythonButton = new System.Windows.Forms.Button();
- this.runRoundTripButton = new System.Windows.Forms.Button();
- this.clearButton = new System.Windows.Forms.Button();
- this.runAstWalkerButton = new System.Windows.Forms.Button();
- this.walkerOutputTextBox = new System.Windows.Forms.RichTextBox();
- this.toolTip = new System.Windows.Forms.ToolTip(this.components);
- this.splitContainer.Panel1.SuspendLayout();
- this.splitContainer.Panel2.SuspendLayout();
- this.splitContainer.SuspendLayout();
- this.SuspendLayout();
- //
- // splitContainer
- //
- this.splitContainer.Dock = System.Windows.Forms.DockStyle.Fill;
- this.splitContainer.Location = new System.Drawing.Point(0, 0);
- this.splitContainer.Name = "splitContainer";
- this.splitContainer.Orientation = System.Windows.Forms.Orientation.Horizontal;
- //
- // splitContainer.Panel1
- //
- this.splitContainer.Panel1.Controls.Add(this.codeTextBox);
- //
- // splitContainer.Panel2
- //
- this.splitContainer.Panel2.Controls.Add(this.runCSharpNRefactoryVisitor);
- this.splitContainer.Panel2.Controls.Add(this.runNRefactoryCSharpCodeDomVisitor);
- this.splitContainer.Panel2.Controls.Add(this.runCSharpToPythonButton);
- this.splitContainer.Panel2.Controls.Add(this.runRoundTripButton);
- this.splitContainer.Panel2.Controls.Add(this.clearButton);
- this.splitContainer.Panel2.Controls.Add(this.runAstWalkerButton);
- this.splitContainer.Panel2.Controls.Add(this.walkerOutputTextBox);
- this.splitContainer.Size = new System.Drawing.Size(515, 386);
- this.splitContainer.SplitterDistance = 138;
- this.splitContainer.TabIndex = 0;
- //
- // codeTextBox
- //
- this.codeTextBox.AcceptsTab = true;
- this.codeTextBox.Dock = System.Windows.Forms.DockStyle.Fill;
- this.codeTextBox.Location = new System.Drawing.Point(0, 0);
- this.codeTextBox.Name = "codeTextBox";
- this.codeTextBox.Size = new System.Drawing.Size(515, 138);
- this.codeTextBox.TabIndex = 0;
- this.codeTextBox.Text = "";
- this.codeTextBox.WordWrap = false;
- //
- // runCSharpNRefactoryVisitor
- //
- this.runCSharpNRefactoryVisitor.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
- this.runCSharpNRefactoryVisitor.Location = new System.Drawing.Point(261, 218);
- this.runCSharpNRefactoryVisitor.Name = "runCSharpNRefactoryVisitor";
- this.runCSharpNRefactoryVisitor.Size = new System.Drawing.Size(117, 23);
- this.runCSharpNRefactoryVisitor.TabIndex = 8;
- this.runCSharpNRefactoryVisitor.Text = "Visit C# AST";
- this.toolTip.SetToolTip(this.runCSharpNRefactoryVisitor, "Walks the NRefactory AST generated from the C# code.");
- this.runCSharpNRefactoryVisitor.UseVisualStyleBackColor = true;
- this.runCSharpNRefactoryVisitor.Click += new System.EventHandler(this.RunCSharpNRefactoryVisitorClick);
- //
- // runNRefactoryCSharpCodeDomVisitor
- //
- this.runNRefactoryCSharpCodeDomVisitor.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
- this.runNRefactoryCSharpCodeDomVisitor.Location = new System.Drawing.Point(384, 218);
- this.runNRefactoryCSharpCodeDomVisitor.Name = "runNRefactoryCSharpCodeDomVisitor";
- this.runNRefactoryCSharpCodeDomVisitor.Size = new System.Drawing.Size(127, 23);
- this.runNRefactoryCSharpCodeDomVisitor.TabIndex = 7;
- this.runNRefactoryCSharpCodeDomVisitor.Text = "Visit C# Code DOM";
- this.toolTip.SetToolTip(this.runNRefactoryCSharpCodeDomVisitor, "Visits the code dom generated from the C# code by the NRefactory code dom visitor" +
- ".");
- this.runNRefactoryCSharpCodeDomVisitor.UseVisualStyleBackColor = true;
- this.runNRefactoryCSharpCodeDomVisitor.Click += new System.EventHandler(this.RunNRefactoryCSharpCodeDomVisitorClick);
- //
- // runCSharpToPythonButton
- //
- this.runCSharpToPythonButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
- this.runCSharpToPythonButton.Location = new System.Drawing.Point(261, 192);
- this.runCSharpToPythonButton.Name = "runCSharpToPythonButton";
- this.runCSharpToPythonButton.Size = new System.Drawing.Size(117, 23);
- this.runCSharpToPythonButton.TabIndex = 6;
- this.runCSharpToPythonButton.Text = "C# to Python";
- this.toolTip.SetToolTip(this.runCSharpToPythonButton, "Takes the code dom generated from the NRefactory parser and converts it to python" +
- " using the python generator.");
- this.runCSharpToPythonButton.UseVisualStyleBackColor = true;
- this.runCSharpToPythonButton.Click += new System.EventHandler(this.RunCSharpToPythonClick);
- //
- // runRoundTripButton
- //
- this.runRoundTripButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
- this.runRoundTripButton.Location = new System.Drawing.Point(138, 191);
- this.runRoundTripButton.Name = "runRoundTripButton";
- this.runRoundTripButton.Size = new System.Drawing.Size(117, 23);
- this.runRoundTripButton.TabIndex = 4;
- this.runRoundTripButton.Text = "Round Trip";
- this.toolTip.SetToolTip(this.runRoundTripButton, "Generates a code dom from the python code and then generates python code from the" +
- " code dom.");
- this.runRoundTripButton.UseVisualStyleBackColor = true;
- this.runRoundTripButton.Click += new System.EventHandler(this.RunRoundTripButtonClick);
- //
- // clearButton
- //
- this.clearButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
- this.clearButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
- this.clearButton.Location = new System.Drawing.Point(138, 218);
- this.clearButton.Name = "clearButton";
- this.clearButton.Size = new System.Drawing.Size(117, 23);
- this.clearButton.TabIndex = 2;
- this.clearButton.Text = "Clear";
- this.clearButton.UseVisualStyleBackColor = true;
- this.clearButton.Click += new System.EventHandler(this.ClearButtonClick);
- //
- // runAstWalkerButton
- //
- this.runAstWalkerButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
- this.runAstWalkerButton.Location = new System.Drawing.Point(384, 191);
- this.runAstWalkerButton.Name = "runAstWalkerButton";
- this.runAstWalkerButton.Size = new System.Drawing.Size(127, 23);
- this.runAstWalkerButton.TabIndex = 1;
- this.runAstWalkerButton.Text = "Visit AST";
- this.toolTip.SetToolTip(this.runAstWalkerButton, "Walks the python AST generated from the python code.");
- this.runAstWalkerButton.UseVisualStyleBackColor = true;
- this.runAstWalkerButton.Click += new System.EventHandler(this.RunAstWalkerButtonClick);
- //
- // walkerOutputTextBox
- //
- this.walkerOutputTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
- | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.walkerOutputTextBox.Location = new System.Drawing.Point(0, 2);
- this.walkerOutputTextBox.Name = "walkerOutputTextBox";
- this.walkerOutputTextBox.Size = new System.Drawing.Size(515, 184);
- this.walkerOutputTextBox.TabIndex = 0;
- this.walkerOutputTextBox.Text = "";
- //
- // MainForm
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(515, 386);
- this.Controls.Add(this.splitContainer);
- this.Name = "MainForm";
- this.Text = "PyWalker";
- this.splitContainer.Panel1.ResumeLayout(false);
- this.splitContainer.Panel2.ResumeLayout(false);
- this.splitContainer.ResumeLayout(false);
- this.ResumeLayout(false);
- }
- private System.Windows.Forms.Button runCSharpNRefactoryVisitor;
- private System.Windows.Forms.Button runNRefactoryCSharpCodeDomVisitor;
- private System.Windows.Forms.Button runCSharpToPythonButton;
- private System.Windows.Forms.ToolTip toolTip;
- private System.Windows.Forms.Button runRoundTripButton;
- private System.Windows.Forms.Button clearButton;
- private System.Windows.Forms.Button runAstWalkerButton;
- private System.Windows.Forms.RichTextBox walkerOutputTextBox;
- private System.Windows.Forms.RichTextBox codeTextBox;
- private System.Windows.Forms.SplitContainer splitContainer;
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PyWalker/MainForm.cs b/src/AddIns/BackendBindings/Python/PyWalker/MainForm.cs
deleted file mode 100644
index c532a2be29d..00000000000
--- a/src/AddIns/BackendBindings/Python/PyWalker/MainForm.cs
+++ /dev/null
@@ -1,157 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.CodeDom;
-using System.CodeDom.Compiler;
-using System.Collections.Generic;
-using System.Drawing;
-using System.IO;
-using System.Windows.Forms;
-using ICSharpCode.PythonBinding;
-using IronPython;
-using IronPython.Compiler;
-using IronPython.Compiler.Ast;
-using IronPython.Runtime;
-using Microsoft.CSharp;
-using Microsoft.Scripting;
-using Microsoft.Scripting.Runtime;
-using NRefactory = ICSharpCode.NRefactory;
-
-namespace PyWalker
-{
- public partial class MainForm : Form, IOutputWriter
- {
- public MainForm()
- {
- InitializeComponent();
- }
-
- public void WriteLine(string s)
- {
- walkerOutputTextBox.Text += String.Concat(s, "\r\n");
- }
-
- void RunAstWalkerButtonClick(object sender, EventArgs e)
- {
- try {
- IronPython.Hosting.Python.CreateEngine();
- Clear();
- PythonCompilerSink sink = new PythonCompilerSink();
- SourceUnit source = DefaultContext.DefaultPythonContext.CreateFileUnit(@"D:\Temp.py", codeTextBox.Text);
- CompilerContext context = new CompilerContext(source, new PythonCompilerOptions(), sink);
- Parser parser = Parser.CreateParser(context, new PythonOptions());
- PythonAst ast = parser.ParseFile(false);
- if (sink.Errors.Count == 0) {
- ResolveWalker walker = new ResolveWalker(this);
- ast.Walk(walker);
- } else {
- walkerOutputTextBox.Text += "\r\n";
- foreach (PythonCompilerError error in sink.Errors) {
- walkerOutputTextBox.Text += error.ToString() + "\r\n";
- }
- }
- } catch (Exception ex) {
- walkerOutputTextBox.Text = ex.ToString();
- }
- }
-
- void ClearButtonClick(object sender, EventArgs e)
- {
- Clear();
- }
-
- void Clear()
- {
- walkerOutputTextBox.Text = String.Empty;
- }
-
- ///
- /// Round trips the Python code through the code DOM and back
- /// to source code.
- ///
- void RunRoundTripButtonClick(object sender, EventArgs e)
- {
- try {
- Clear();
-// PythonProvider provider = new PythonProvider();
-// CodeCompileUnit unit = provider.Parse(new StringReader(codeTextBox.Text));
-// StringWriter writer = new StringWriter();
-// CodeGeneratorOptions options = new CodeGeneratorOptions();
-// options.BlankLinesBetweenMembers = false;
-// options.IndentString = "\t";
-// provider.GenerateCodeFromCompileUnit(unit, writer, options);
-//
-// walkerOutputTextBox.Text = writer.ToString();
- } catch (Exception ex) {
- walkerOutputTextBox.Text = ex.ToString();
- }
- }
-
- ///
- /// Converts the C# code to a code dom using the NRefactory
- /// library and then visits the code dom.
- ///
- void RunCSharpToPythonClick(object sender, EventArgs e)
- {
- try {
- Clear();
- NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(NRefactory.SupportedLanguage.CSharp);
- walkerOutputTextBox.Text = converter.Convert(codeTextBox.Text);
- } catch (Exception ex) {
- walkerOutputTextBox.Text = ex.ToString();
- }
- }
-
- ///
- /// Converts C# to python using the code dom generated by the
- /// NRefactory parser.
- ///
- void RunNRefactoryCSharpCodeDomVisitorClick(object sender, EventArgs e)
- {
- try {
- Clear();
- using (NRefactory.IParser parser = NRefactory.ParserFactory.CreateParser(NRefactory.SupportedLanguage.CSharp, new StringReader(codeTextBox.Text))) {
- parser.ParseMethodBodies = false;
- parser.Parse();
- NRefactory.Visitors.CodeDomVisitor visitor = new NRefactory.Visitors.CodeDomVisitor();
- visitor.VisitCompilationUnit(parser.CompilationUnit, null);
- CodeDomVisitor codeDomVisitor = new CodeDomVisitor(this);
- codeDomVisitor.Visit(visitor.codeCompileUnit);
- }
- } catch (Exception ex) {
- walkerOutputTextBox.Text = ex.ToString();
- }
- }
-
- void RunCSharpNRefactoryVisitorClick(object sender, EventArgs e)
- {
- try {
- Clear();
- using (NRefactory.IParser parser = NRefactory.ParserFactory.CreateParser(NRefactory.SupportedLanguage.CSharp, new StringReader(codeTextBox.Text))) {
- parser.ParseMethodBodies = false;
- parser.Parse();
- NRefactoryAstVisitor visitor = new NRefactoryAstVisitor(this);
- visitor.VisitCompilationUnit(parser.CompilationUnit, null);
- }
- } catch (Exception ex) {
- walkerOutputTextBox.Text = ex.ToString();
- }
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PyWalker/MainForm.resx b/src/AddIns/BackendBindings/Python/PyWalker/MainForm.resx
deleted file mode 100644
index 5cea0f6fc45..00000000000
--- a/src/AddIns/BackendBindings/Python/PyWalker/MainForm.resx
+++ /dev/null
@@ -1,123 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 17, 17
-
-
\ No newline at end of file
diff --git a/src/AddIns/BackendBindings/Python/PyWalker/NRefactoryAstVisitor.cs b/src/AddIns/BackendBindings/Python/PyWalker/NRefactoryAstVisitor.cs
deleted file mode 100644
index 4bcc9914061..00000000000
--- a/src/AddIns/BackendBindings/Python/PyWalker/NRefactoryAstVisitor.cs
+++ /dev/null
@@ -1,678 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.Text;
-using ICSharpCode.NRefactory.Ast;
-using ICSharpCode.NRefactory.Visitors;
-
-namespace PyWalker
-{
- public class NRefactoryAstVisitor : AbstractAstVisitor
- {
- IOutputWriter writer;
-
- public NRefactoryAstVisitor(IOutputWriter writer)
- {
- this.writer = writer;
- }
-
- public override object VisitAddHandlerStatement(AddHandlerStatement addHandlerStatement, object data)
- {
- return base.VisitAddHandlerStatement(addHandlerStatement, data);
- }
-
- public override object VisitAddressOfExpression(AddressOfExpression addressOfExpression, object data)
- {
- return base.VisitAddressOfExpression(addressOfExpression, data);
- }
-
- public override object VisitAnonymousMethodExpression(AnonymousMethodExpression anonymousMethodExpression, object data)
- {
- return base.VisitAnonymousMethodExpression(anonymousMethodExpression, data);
- }
-
- public override object VisitArrayCreateExpression(ArrayCreateExpression arrayCreateExpression, object data)
- {
- return base.VisitArrayCreateExpression(arrayCreateExpression, data);
- }
-
- public override object VisitAssignmentExpression(AssignmentExpression assignmentExpression, object data)
- {
- WriteLine("VisitAssignmentExpression");
- return base.VisitAssignmentExpression(assignmentExpression, data);
- }
-
- public override object VisitAttribute(ICSharpCode.NRefactory.Ast.Attribute attribute, object data)
- {
- return base.VisitAttribute(attribute, data);
- }
-
- public override object VisitAttributeSection(AttributeSection attributeSection, object data)
- {
- return base.VisitAttributeSection(attributeSection, data);
- }
-
- public override object VisitBaseReferenceExpression(BaseReferenceExpression baseReferenceExpression, object data)
- {
- return base.VisitBaseReferenceExpression(baseReferenceExpression, data);
- }
-
- public override object VisitBinaryOperatorExpression(BinaryOperatorExpression binaryOperatorExpression, object data)
- {
- return base.VisitBinaryOperatorExpression(binaryOperatorExpression, data);
- }
-
- public override object VisitBlockStatement(BlockStatement blockStatement, object data)
- {
- return base.VisitBlockStatement(blockStatement, data);
- }
-
- public override object VisitBreakStatement(BreakStatement breakStatement, object data)
- {
- return base.VisitBreakStatement(breakStatement, data);
- }
-
- public override object VisitCaseLabel(CaseLabel caseLabel, object data)
- {
- return base.VisitCaseLabel(caseLabel, data);
- }
-
- public override object VisitCastExpression(CastExpression castExpression, object data)
- {
- return base.VisitCastExpression(castExpression, data);
- }
-
- public override object VisitCatchClause(CatchClause catchClause, object data)
- {
- return base.VisitCatchClause(catchClause, data);
- }
-
- public override object VisitCheckedExpression(CheckedExpression checkedExpression, object data)
- {
- return base.VisitCheckedExpression(checkedExpression, data);
- }
-
- public override object VisitCheckedStatement(CheckedStatement checkedStatement, object data)
- {
- return base.VisitCheckedStatement(checkedStatement, data);
- }
-
- public override object VisitClassReferenceExpression(ClassReferenceExpression classReferenceExpression, object data)
- {
- return base.VisitClassReferenceExpression(classReferenceExpression, data);
- }
-
- public override object VisitCollectionInitializerExpression(CollectionInitializerExpression collectionInitializerExpression, object data)
- {
- WriteLine("VisitCollectionInitializerExpression");
- return base.VisitCollectionInitializerExpression(collectionInitializerExpression, data);
- }
-
- public override object VisitCompilationUnit(CompilationUnit compilationUnit, object data)
- {
- WriteLine("VisitCodeCompileUnit");
- return base.VisitCompilationUnit(compilationUnit, data);
- }
-
- public override object VisitConditionalExpression(ConditionalExpression conditionalExpression, object data)
- {
- return base.VisitConditionalExpression(conditionalExpression, data);
- }
-
- public override object VisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration, object data)
- {
- WriteLine("VisitConstructorDeclaration");
- return base.VisitConstructorDeclaration(constructorDeclaration, data);
- }
-
- public override object VisitConstructorInitializer(ConstructorInitializer constructorInitializer, object data)
- {
- WriteLine("VisitConstructorInitializer");
- return base.VisitConstructorInitializer(constructorInitializer, data);
- }
-
- public override object VisitContinueStatement(ContinueStatement continueStatement, object data)
- {
- return base.VisitContinueStatement(continueStatement, data);
- }
-
- public override object VisitDeclareDeclaration(DeclareDeclaration declareDeclaration, object data)
- {
- return base.VisitDeclareDeclaration(declareDeclaration, data);
- }
-
- public override object VisitDefaultValueExpression(DefaultValueExpression defaultValueExpression, object data)
- {
- return base.VisitDefaultValueExpression(defaultValueExpression, data);
- }
-
- public override object VisitDelegateDeclaration(DelegateDeclaration delegateDeclaration, object data)
- {
- return base.VisitDelegateDeclaration(delegateDeclaration, data);
- }
-
- public override object VisitDestructorDeclaration(DestructorDeclaration destructorDeclaration, object data)
- {
- return base.VisitDestructorDeclaration(destructorDeclaration, data);
- }
-
- public override object VisitDirectionExpression(DirectionExpression directionExpression, object data)
- {
- return base.VisitDirectionExpression(directionExpression, data);
- }
-
- public override object VisitDoLoopStatement(DoLoopStatement doLoopStatement, object data)
- {
- return base.VisitDoLoopStatement(doLoopStatement, data);
- }
-
- public override object VisitElseIfSection(ElseIfSection elseIfSection, object data)
- {
- return base.VisitElseIfSection(elseIfSection, data);
- }
-
- public override object VisitEmptyStatement(EmptyStatement emptyStatement, object data)
- {
- WriteLine("VisitEmptyStatement");
- return base.VisitEmptyStatement(emptyStatement, data);
- }
-
- public override object VisitEndStatement(EndStatement endStatement, object data)
- {
- return base.VisitEndStatement(endStatement, data);
- }
-
- public override object VisitEraseStatement(EraseStatement eraseStatement, object data)
- {
- return base.VisitEraseStatement(eraseStatement, data);
- }
-
- public override object VisitErrorStatement(ErrorStatement errorStatement, object data)
- {
- return base.VisitErrorStatement(errorStatement, data);
- }
-
- public override object VisitEventAddRegion(EventAddRegion eventAddRegion, object data)
- {
- return base.VisitEventAddRegion(eventAddRegion, data);
- }
-
- public override object VisitEventDeclaration(EventDeclaration eventDeclaration, object data)
- {
- return base.VisitEventDeclaration(eventDeclaration, data);
- }
-
- public override object VisitEventRaiseRegion(EventRaiseRegion eventRaiseRegion, object data)
- {
- return base.VisitEventRaiseRegion(eventRaiseRegion, data);
- }
-
- public override object VisitEventRemoveRegion(EventRemoveRegion eventRemoveRegion, object data)
- {
- return base.VisitEventRemoveRegion(eventRemoveRegion, data);
- }
-
- public override object VisitExitStatement(ExitStatement exitStatement, object data)
- {
- return base.VisitExitStatement(exitStatement, data);
- }
-
- public override object VisitExpressionRangeVariable(ExpressionRangeVariable expressionRangeVariable, object data)
- {
- return base.VisitExpressionRangeVariable(expressionRangeVariable, data);
- }
-
- public override object VisitExpressionStatement(ExpressionStatement expressionStatement, object data)
- {
- WriteLine("VisitExpressionStatement");
- return base.VisitExpressionStatement(expressionStatement, data);
- }
-
- public override object VisitFieldDeclaration(FieldDeclaration fieldDeclaration, object data)
- {
- WriteLine("VisitFieldDeclaration: " + fieldDeclaration.Fields[0].Name);
- return base.VisitFieldDeclaration(fieldDeclaration, data);
- }
-
- public override object VisitFixedStatement(FixedStatement fixedStatement, object data)
- {
- return base.VisitFixedStatement(fixedStatement, data);
- }
-
- public override object VisitForeachStatement(ForeachStatement foreachStatement, object data)
- {
- return base.VisitForeachStatement(foreachStatement, data);
- }
-
- public override object VisitForNextStatement(ForNextStatement forNextStatement, object data)
- {
- return base.VisitForNextStatement(forNextStatement, data);
- }
-
- public override object VisitForStatement(ForStatement forStatement, object data)
- {
- return base.VisitForStatement(forStatement, data);
- }
-
- public override object VisitGotoCaseStatement(GotoCaseStatement gotoCaseStatement, object data)
- {
- return base.VisitGotoCaseStatement(gotoCaseStatement, data);
- }
-
- public override object VisitGotoStatement(GotoStatement gotoStatement, object data)
- {
- return base.VisitGotoStatement(gotoStatement, data);
- }
-
- public override object VisitIdentifierExpression(IdentifierExpression identifierExpression, object data)
- {
- WriteLine("VisitIdentifierExpression");
- return base.VisitIdentifierExpression(identifierExpression, data);
- }
-
- public override object VisitIfElseStatement(IfElseStatement ifElseStatement, object data)
- {
- return base.VisitIfElseStatement(ifElseStatement, data);
- }
-
- public override object VisitIndexerExpression(IndexerExpression indexerExpression, object data)
- {
- return base.VisitIndexerExpression(indexerExpression, data);
- }
-
- public override object VisitInnerClassTypeReference(InnerClassTypeReference innerClassTypeReference, object data)
- {
- return base.VisitInnerClassTypeReference(innerClassTypeReference, data);
- }
-
- public override object VisitInterfaceImplementation(InterfaceImplementation interfaceImplementation, object data)
- {
- return base.VisitInterfaceImplementation(interfaceImplementation, data);
- }
-
- public override object VisitInvocationExpression(InvocationExpression invocationExpression, object data)
- {
- return base.VisitInvocationExpression(invocationExpression, data);
- }
-
- public override object VisitLabelStatement(LabelStatement labelStatement, object data)
- {
- return base.VisitLabelStatement(labelStatement, data);
- }
-
- public override object VisitLambdaExpression(LambdaExpression lambdaExpression, object data)
- {
- return base.VisitLambdaExpression(lambdaExpression, data);
- }
-
- public override object VisitLocalVariableDeclaration(LocalVariableDeclaration localVariableDeclaration, object data)
- {
- WriteLine("VisitLocalVariableDeclaration");
- return base.VisitLocalVariableDeclaration(localVariableDeclaration, data);
- }
-
- public override object VisitLockStatement(LockStatement lockStatement, object data)
- {
- return base.VisitLockStatement(lockStatement, data);
- }
-
- public override object VisitMemberReferenceExpression(MemberReferenceExpression memberReferenceExpression, object data)
- {
- WriteLine("VisitMemberReferenceExpression");
- return base.VisitMemberReferenceExpression(memberReferenceExpression, data);
- }
-
- public override object VisitMethodDeclaration(MethodDeclaration methodDeclaration, object data)
- {
- WriteLine("VisitMethodDeclaration");
- using (IDisposable indentLevel = Indentation.IncrementLevel()) {
- return base.VisitMethodDeclaration(methodDeclaration, data);
- }
- }
-
- public override object VisitNamedArgumentExpression(NamedArgumentExpression namedArgumentExpression, object data)
- {
- return base.VisitNamedArgumentExpression(namedArgumentExpression, data);
- }
-
- public override object VisitNamespaceDeclaration(NamespaceDeclaration namespaceDeclaration, object data)
- {
- WriteLine("VisitNamespaceDeclaration");
- return base.VisitNamespaceDeclaration(namespaceDeclaration, data);
- }
-
- public override object VisitObjectCreateExpression(ObjectCreateExpression objectCreateExpression, object data)
- {
- WriteLine("VisitObjectCreateExpression");
- return base.VisitObjectCreateExpression(objectCreateExpression, data);
- }
-
- public override object VisitOnErrorStatement(OnErrorStatement onErrorStatement, object data)
- {
- return base.VisitOnErrorStatement(onErrorStatement, data);
- }
-
- public override object VisitOperatorDeclaration(OperatorDeclaration operatorDeclaration, object data)
- {
- return base.VisitOperatorDeclaration(operatorDeclaration, data);
- }
-
- public override object VisitOptionDeclaration(OptionDeclaration optionDeclaration, object data)
- {
- return base.VisitOptionDeclaration(optionDeclaration, data);
- }
-
- public override object VisitParameterDeclarationExpression(ParameterDeclarationExpression parameterDeclarationExpression, object data)
- {
- return base.VisitParameterDeclarationExpression(parameterDeclarationExpression, data);
- }
-
- public override object VisitParenthesizedExpression(ParenthesizedExpression parenthesizedExpression, object data)
- {
- return base.VisitParenthesizedExpression(parenthesizedExpression, data);
- }
-
- public override object VisitPointerReferenceExpression(PointerReferenceExpression pointerReferenceExpression, object data)
- {
- return base.VisitPointerReferenceExpression(pointerReferenceExpression, data);
- }
-
- public override object VisitPrimitiveExpression(PrimitiveExpression primitiveExpression, object data)
- {
- return base.VisitPrimitiveExpression(primitiveExpression, data);
- }
-
- public override object VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration, object data)
- {
- return base.VisitPropertyDeclaration(propertyDeclaration, data);
- }
-
- public override object VisitPropertyGetRegion(PropertyGetRegion propertyGetRegion, object data)
- {
- return base.VisitPropertyGetRegion(propertyGetRegion, data);
- }
-
- public override object VisitPropertySetRegion(PropertySetRegion propertySetRegion, object data)
- {
- return base.VisitPropertySetRegion(propertySetRegion, data);
- }
-
- public override object VisitQueryExpression(QueryExpression queryExpression, object data)
- {
- return base.VisitQueryExpression(queryExpression, data);
- }
-
- public override object VisitQueryExpressionAggregateClause(QueryExpressionAggregateClause queryExpressionAggregateClause, object data)
- {
- return base.VisitQueryExpressionAggregateClause(queryExpressionAggregateClause, data);
- }
-
- public override object VisitQueryExpressionDistinctClause(QueryExpressionDistinctClause queryExpressionDistinctClause, object data)
- {
- return base.VisitQueryExpressionDistinctClause(queryExpressionDistinctClause, data);
- }
-
- public override object VisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data)
- {
- return base.VisitQueryExpressionFromClause(queryExpressionFromClause, data);
- }
-
- public override object VisitQueryExpressionGroupClause(QueryExpressionGroupClause queryExpressionGroupClause, object data)
- {
- return base.VisitQueryExpressionGroupClause(queryExpressionGroupClause, data);
- }
-
- public override object VisitQueryExpressionGroupJoinVBClause(QueryExpressionGroupJoinVBClause queryExpressionGroupJoinVBClause, object data)
- {
- return base.VisitQueryExpressionGroupJoinVBClause(queryExpressionGroupJoinVBClause, data);
- }
-
- public override object VisitQueryExpressionGroupVBClause(QueryExpressionGroupVBClause queryExpressionGroupVBClause, object data)
- {
- return base.VisitQueryExpressionGroupVBClause(queryExpressionGroupVBClause, data);
- }
-
- public override object VisitQueryExpressionJoinClause(QueryExpressionJoinClause queryExpressionJoinClause, object data)
- {
- return base.VisitQueryExpressionJoinClause(queryExpressionJoinClause, data);
- }
-
- public override object VisitQueryExpressionJoinConditionVB(QueryExpressionJoinConditionVB queryExpressionJoinConditionVB, object data)
- {
- return base.VisitQueryExpressionJoinConditionVB(queryExpressionJoinConditionVB, data);
- }
-
- public override object VisitQueryExpressionJoinVBClause(QueryExpressionJoinVBClause queryExpressionJoinVBClause, object data)
- {
- return base.VisitQueryExpressionJoinVBClause(queryExpressionJoinVBClause, data);
- }
-
- public override object VisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data)
- {
- return base.VisitQueryExpressionLetClause(queryExpressionLetClause, data);
- }
-
- public override object VisitQueryExpressionLetVBClause(QueryExpressionLetVBClause queryExpressionLetVBClause, object data)
- {
- return base.VisitQueryExpressionLetVBClause(queryExpressionLetVBClause, data);
- }
-
- public override object VisitQueryExpressionOrderClause(QueryExpressionOrderClause queryExpressionOrderClause, object data)
- {
- return base.VisitQueryExpressionOrderClause(queryExpressionOrderClause, data);
- }
-
- public override object VisitQueryExpressionOrdering(QueryExpressionOrdering queryExpressionOrdering, object data)
- {
- return base.VisitQueryExpressionOrdering(queryExpressionOrdering, data);
- }
-
- public override object VisitQueryExpressionPartitionVBClause(QueryExpressionPartitionVBClause queryExpressionPartitionVBClause, object data)
- {
- return base.VisitQueryExpressionPartitionVBClause(queryExpressionPartitionVBClause, data);
- }
-
- public override object VisitQueryExpressionSelectClause(QueryExpressionSelectClause queryExpressionSelectClause, object data)
- {
- return base.VisitQueryExpressionSelectClause(queryExpressionSelectClause, data);
- }
-
- public override object VisitQueryExpressionSelectVBClause(QueryExpressionSelectVBClause queryExpressionSelectVBClause, object data)
- {
- return base.VisitQueryExpressionSelectVBClause(queryExpressionSelectVBClause, data);
- }
-
- public override object VisitQueryExpressionWhereClause(QueryExpressionWhereClause queryExpressionWhereClause, object data)
- {
- return base.VisitQueryExpressionWhereClause(queryExpressionWhereClause, data);
- }
-
- public override object VisitRaiseEventStatement(RaiseEventStatement raiseEventStatement, object data)
- {
- return base.VisitRaiseEventStatement(raiseEventStatement, data);
- }
-
- public override object VisitReDimStatement(ReDimStatement reDimStatement, object data)
- {
- return base.VisitReDimStatement(reDimStatement, data);
- }
-
- public override object VisitRemoveHandlerStatement(RemoveHandlerStatement removeHandlerStatement, object data)
- {
- return base.VisitRemoveHandlerStatement(removeHandlerStatement, data);
- }
-
- public override object VisitResumeStatement(ResumeStatement resumeStatement, object data)
- {
- return base.VisitResumeStatement(resumeStatement, data);
- }
-
- public override object VisitReturnStatement(ReturnStatement returnStatement, object data)
- {
- return base.VisitReturnStatement(returnStatement, data);
- }
-
- public override object VisitSizeOfExpression(SizeOfExpression sizeOfExpression, object data)
- {
- return base.VisitSizeOfExpression(sizeOfExpression, data);
- }
-
- public override object VisitStackAllocExpression(StackAllocExpression stackAllocExpression, object data)
- {
- return base.VisitStackAllocExpression(stackAllocExpression, data);
- }
-
- public override object VisitStopStatement(StopStatement stopStatement, object data)
- {
- return base.VisitStopStatement(stopStatement, data);
- }
-
- public override object VisitSwitchSection(SwitchSection switchSection, object data)
- {
- return base.VisitSwitchSection(switchSection, data);
- }
-
- public override object VisitSwitchStatement(SwitchStatement switchStatement, object data)
- {
- return base.VisitSwitchStatement(switchStatement, data);
- }
-
- public override object VisitTemplateDefinition(TemplateDefinition templateDefinition, object data)
- {
- return base.VisitTemplateDefinition(templateDefinition, data);
- }
-
- public override object VisitThisReferenceExpression(ThisReferenceExpression thisReferenceExpression, object data)
- {
- WriteLine("VisitThisReferenceExpression");
- return base.VisitThisReferenceExpression(thisReferenceExpression, data);
- }
-
- public override object VisitThrowStatement(ThrowStatement throwStatement, object data)
- {
- return base.VisitThrowStatement(throwStatement, data);
- }
-
- public override object VisitTryCatchStatement(TryCatchStatement tryCatchStatement, object data)
- {
- return base.VisitTryCatchStatement(tryCatchStatement, data);
- }
-
- public override object VisitTypeDeclaration(TypeDeclaration typeDeclaration, object data)
- {
- WriteLine("VisitTypeDeclaration");
- using (IDisposable indentLevel = Indentation.IncrementLevel()) {
- return base.VisitTypeDeclaration(typeDeclaration, data);
- }
- }
-
- public override object VisitTypeOfExpression(TypeOfExpression typeOfExpression, object data)
- {
- return base.VisitTypeOfExpression(typeOfExpression, data);
- }
-
- public override object VisitTypeOfIsExpression(TypeOfIsExpression typeOfIsExpression, object data)
- {
- return base.VisitTypeOfIsExpression(typeOfIsExpression, data);
- }
-
- public override object VisitTypeReference(TypeReference typeReference, object data)
- {
- return base.VisitTypeReference(typeReference, data);
- }
-
- public override object VisitTypeReferenceExpression(TypeReferenceExpression typeReferenceExpression, object data)
- {
- return base.VisitTypeReferenceExpression(typeReferenceExpression, data);
- }
-
- public override object VisitUnaryOperatorExpression(UnaryOperatorExpression unaryOperatorExpression, object data)
- {
- return base.VisitUnaryOperatorExpression(unaryOperatorExpression, data);
- }
-
- public override object VisitUncheckedExpression(UncheckedExpression uncheckedExpression, object data)
- {
- return base.VisitUncheckedExpression(uncheckedExpression, data);
- }
-
- public override object VisitUncheckedStatement(UncheckedStatement uncheckedStatement, object data)
- {
- return base.VisitUncheckedStatement(uncheckedStatement, data);
- }
-
- public override object VisitUnsafeStatement(UnsafeStatement unsafeStatement, object data)
- {
- return base.VisitUnsafeStatement(unsafeStatement, data);
- }
-
- public override object VisitUsing(Using @using, object data)
- {
- WriteLine("VisitUsing");
- return base.VisitUsing(@using, data);
- }
-
- public override object VisitUsingDeclaration(UsingDeclaration usingDeclaration, object data)
- {
- WriteLine("VisitUsingDeclaration");
- return base.VisitUsingDeclaration(usingDeclaration, data);
- }
-
- public override object VisitUsingStatement(UsingStatement usingStatement, object data)
- {
- WriteLine("VisitUsingStatement");
- return base.VisitUsingStatement(usingStatement, data);
- }
-
- public override object VisitVariableDeclaration(VariableDeclaration variableDeclaration, object data)
- {
- WriteLine("VisitVariableDeclaration");
- return base.VisitVariableDeclaration(variableDeclaration, data);
- }
-
- public override object VisitWithStatement(WithStatement withStatement, object data)
- {
- return base.VisitWithStatement(withStatement, data);
- }
-
- public override object VisitYieldStatement(YieldStatement yieldStatement, object data)
- {
- return base.VisitYieldStatement(yieldStatement, data);
- }
-
- ///
- /// Writes a line and indents it to the current level.
- ///
- void WriteLine(string s)
- {
- writer.WriteLine(GetIndent() + s);
- }
-
- string GetIndent()
- {
- StringBuilder indent = new StringBuilder();
- for (int i = 0; i < Indentation.CurrentLevel; ++i) {
- indent.Append('\t');
- }
- return indent.ToString();
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PyWalker/Program.cs b/src/AddIns/BackendBindings/Python/PyWalker/Program.cs
deleted file mode 100644
index 49504f22d29..00000000000
--- a/src/AddIns/BackendBindings/Python/PyWalker/Program.cs
+++ /dev/null
@@ -1,41 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Windows.Forms;
-
-namespace PyWalker
-{
- ///
- /// Class with program entry point.
- ///
- internal sealed class Program
- {
- ///
- /// Program entry point.
- ///
- [STAThread]
- private static void Main(string[] args)
- {
- Application.EnableVisualStyles();
- Application.SetCompatibleTextRenderingDefault(false);
- Application.Run(new MainForm());
- }
-
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PyWalker/PyWalker.csproj b/src/AddIns/BackendBindings/Python/PyWalker/PyWalker.csproj
deleted file mode 100644
index 50c0c251a6e..00000000000
--- a/src/AddIns/BackendBindings/Python/PyWalker/PyWalker.csproj
+++ /dev/null
@@ -1,84 +0,0 @@
-
-
-
- {55329704-6046-48EC-8A20-5C80B3092A63}
- Debug
- AnyCPU
- WinExe
- PyWalker
- PyWalker
- v4.0
- False
- False
- 4
- false
-
-
- bin\Debug\
- true
- Full
- True
- DEBUG;TRACE
- Project
- False
-
-
- bin\Release\
- False
- None
- False
- TRACE
-
-
- False
- Auto
- 4194304
- AnyCPU
- 4096
-
-
-
-
- ..\RequiredLibraries\IronPython.dll
-
-
- ..\RequiredLibraries\IronPython.Modules.dll
-
-
- ..\RequiredLibraries\Microsoft.Dynamic.dll
-
-
- ..\RequiredLibraries\Microsoft.Scripting.dll
-
-
-
-
-
-
-
-
-
-
-
-
-
- MainForm.cs
-
-
-
-
-
- MainForm.cs
-
-
-
-
- {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}
- NRefactory
-
-
- {8D732610-8FC6-43BA-94C9-7126FD7FE361}
- PythonBinding
-
-
-
\ No newline at end of file
diff --git a/src/AddIns/BackendBindings/Python/PyWalker/ResolveWalker.cs b/src/AddIns/BackendBindings/Python/PyWalker/ResolveWalker.cs
deleted file mode 100644
index 504a3138147..00000000000
--- a/src/AddIns/BackendBindings/Python/PyWalker/ResolveWalker.cs
+++ /dev/null
@@ -1,237 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using System.Text;
-using IronPython;
-using IronPython.Compiler;
-using IronPython.Compiler.Ast;
-
-namespace PyWalker
-{
- public interface IOutputWriter
- {
- void WriteLine(string s);
- }
-
- public class ResolveWalker : PythonWalker
- {
- IOutputWriter writer;
-
- public ResolveWalker(IOutputWriter writer)
- {
- this.writer = writer;
- }
-
- public override bool Walk(AndExpression node)
- {
- writer.WriteLine("And");
- return base.Walk(node);
- }
-
- public override bool Walk(AssertStatement node)
- {
- writer.WriteLine("Assert");
- return base.Walk(node);
- }
-
- public override bool Walk(Arg node)
- {
- writer.WriteLine("Arg: " + node.Name.ToString());
- return base.Walk(node);
- }
-
- public override bool Walk(AugmentedAssignStatement node)
- {
- writer.WriteLine("AugmentedAssignStatement");
- return base.Walk(node);
- }
-
- public override bool Walk(AssignmentStatement node)
- {
- writer.WriteLine("AssignmentStatement");
- return base.Walk(node);
- }
-
- public override bool Walk(BackQuoteExpression node)
- {
- writer.WriteLine("BackQuote");
- return base.Walk(node);
- }
-
- public override bool Walk(BinaryExpression node)
- {
- writer.WriteLine("Binary");
- return base.Walk(node);
- }
-
- public override bool Walk(BreakStatement node)
- {
- writer.WriteLine("Breaks");
- return base.Walk(node);
- }
-
- public override bool Walk(ClassDefinition node)
- {
- if (node.Bases.Count > 0) {
- writer.WriteLine("Class: " + node.Name + " BaseTypes: " + GetBaseTypes(node.Bases));
- } else {
- writer.WriteLine("Class: " + node.Name);
- }
- return base.Walk(node);
- }
-
- public override bool Walk(ConditionalExpression node)
- {
- writer.WriteLine("ConditionalExpression");
- return base.Walk(node);
- }
-
- public override bool Walk(ConstantExpression node)
- {
- writer.WriteLine("ConstantExpression");
- return base.Walk(node);
- }
-
- public override bool Walk(ContinueStatement node)
- {
- writer.WriteLine("Continue");
- return base.Walk(node);
- }
-
- public override bool Walk(PrintStatement node)
- {
- writer.WriteLine("PrintStatement");
- return base.Walk(node);
- }
-
- public override bool Walk(FunctionDefinition node)
- {
- writer.WriteLine("FunctionDefinition");
- return base.Walk(node);
- }
-
- public override bool Walk(CallExpression node)
- {
- writer.WriteLine("Call");
- return base.Walk(node);
- }
-
- public override bool Walk(DictionaryExpression node)
- {
- writer.WriteLine("Dict");
- return base.Walk(node);
- }
-
- public override bool Walk(DottedName node)
- {
- writer.WriteLine("DottedName");
- return base.Walk(node);
- }
-
- public override bool Walk(ExpressionStatement node)
- {
- writer.WriteLine("Expr");
- return base.Walk(node);
- }
-
- public override bool Walk(GlobalStatement node)
- {
- writer.WriteLine("Global");
- return base.Walk(node);
- }
-
- public override bool Walk(NameExpression node)
- {
- writer.WriteLine("Name: " + node.Name);
- return base.Walk(node);
- }
-
- public override bool Walk(MemberExpression node)
- {
- writer.WriteLine("Member: " + node.Name);
- return base.Walk(node);
- }
-
- public override bool Walk(FromImportStatement node)
- {
- writer.WriteLine("FromImport: " + node.Root.MakeString());
- return base.Walk(node);
- }
-
- public override bool Walk(ImportStatement node)
- {
- writer.WriteLine("Import: " + GetImports(node.Names));
- return base.Walk(node);
- }
-
- public override bool Walk(IndexExpression node)
- {
- writer.WriteLine("Index: " + node.Index.ToString());
- return base.Walk(node);
- }
-
- public override bool Walk(UnaryExpression node)
- {
- writer.WriteLine("Unary");
- return base.Walk(node);
- }
-
- public override bool Walk(SuiteStatement node)
- {
- writer.WriteLine("Suite");
- return base.Walk(node);
- }
-
- public override bool Walk(ErrorExpression node)
- {
- writer.WriteLine("Error");
- return base.Walk(node);
- }
-
- public override bool Walk(IfStatement node)
- {
- writer.WriteLine("If");
- return base.Walk(node);
- }
-
- string GetImports(IList names)
- {
- StringBuilder s = new StringBuilder();
- foreach (DottedName name in names) {
- s.Append(name.MakeString());
- s.Append(',');
- }
- return s.ToString();
- }
-
- string GetBaseTypes(IList types)
- {
- StringBuilder s = new StringBuilder();
- foreach (Expression expression in types) {
- NameExpression nameExpression = expression as NameExpression;
- if (nameExpression != null) {
- s.Append(nameExpression.Name.ToString());
- s.Append(',');
- }
- }
- return s.ToString();
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Configuration/AssemblyInfo.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Configuration/AssemblyInfo.cs
deleted file mode 100644
index b0b9b2682e5..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Configuration/AssemblyInfo.cs
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System.Reflection;
-
-// Information about this assembly is defined by the following
-// attributes.
-//
-// change them to the information which is associated with the assembly
-// you compile.
-
-[assembly: AssemblyTitle("Python.Build.Tasks")]
-[assembly: AssemblyDescription("Provides IronPython build tasks for the IronPython addin.")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Python.Build.Tasks.csproj b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Python.Build.Tasks.csproj
deleted file mode 100644
index 413080a8a7a..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Python.Build.Tasks.csproj
+++ /dev/null
@@ -1,79 +0,0 @@
-
-
-
- {D332F2D1-2CF1-43B7-903C-844BD5211A7E}
- Debug
- AnyCPU
- Library
- ICSharpCode.Python.Build.Tasks
- Python.Build.Tasks
- False
- False
- 4
- false
- v4.0
- OnBuildSuccess
-
-
-
-
- ..\..\..\..\..\..\AddIns\BackendBindings\PythonBinding\
- true
- Full
- True
- DEBUG;TRACE
- False
-
-
- ..\..\..\..\..\..\AddIns\BackendBindings\PythonBinding\
- false
- None
- False
- TRACE
- False
-
-
- False
- Auto
- 4194304
- AnyCPU
- 4096
-
-
-
-
- ..\..\RequiredLibraries\IronPython.dll
-
-
- ..\..\RequiredLibraries\IronPython.Modules.dll
-
-
-
-
- 3.5
-
-
- ..\..\RequiredLibraries\Microsoft.Dynamic.dll
-
-
- ..\..\RequiredLibraries\Microsoft.Scripting.dll
-
-
-
-
-
-
- Configuration\GlobalAssemblyInfo.cs
-
-
-
-
-
-
-
-
-
- Always
-
-
-
\ No newline at end of file
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/SharpDevelop.Build.Python.targets b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/SharpDevelop.Build.Python.targets
deleted file mode 100644
index 51171eeae5a..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/SharpDevelop.Build.Python.targets
+++ /dev/null
@@ -1,105 +0,0 @@
-
-
-
-
-
- $(MSBuildAllProjects);$(PythonBinPath)\SharpDevelop.Build.Python.targets
- .py
- Python
-
-
-
-
-
-
-
-
- <_Temporary Remove="@(_Temporary)" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- <_Temporary Remove="@(_Temporary)" />
-
-
-
-
-
-
-
-
-
-
-
- CopyFilesToOutputDirectory;CopyIntermediateAssemblyDllToOutputDirectory
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/IPythonCompiler.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/IPythonCompiler.cs
deleted file mode 100644
index dd5e193f5fa..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/IPythonCompiler.cs
+++ /dev/null
@@ -1,83 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using System.Reflection;
-using System.Reflection.Emit;
-
-namespace ICSharpCode.Python.Build.Tasks
-{
- ///
- /// Python compiler interface.
- ///
- public interface IPythonCompiler : IDisposable
- {
- ///
- /// Gets or sets the source files to compile.
- ///
- IList SourceFiles { get; set; }
-
- ///
- /// Gets or sets the filenames of the referenced assemblies.
- ///
- IList ReferencedAssemblies { get; set; }
-
- ///
- /// Gets or sets the resources to be compiled.
- ///
- IList ResourceFiles { get; set; }
-
- ///
- /// Executes the compiler.
- ///
- void Compile();
-
- ///
- /// Gets or sets the type of the compiled assembly (e.g. windows app,
- /// console app or dll).
- ///
- PEFileKinds TargetKind { get; set; }
-
- ///
- /// Gets or sets the nature of the code in the executable produced by the compiler.
- ///
- PortableExecutableKinds ExecutableKind { get; set; }
-
- ///
- /// Gets or sets the machine that will be targeted by the compiler.
- ///
- ImageFileMachine Machine { get; set; }
-
- ///
- /// Gets or sets the file that contains the main entry point.
- ///
- string MainFile { get; set; }
-
- ///
- /// Gets or sets the output assembly filename.
- ///
- string OutputAssembly { get; set; }
-
- ///
- /// Gets or sets whether the compiler should include debug
- /// information in the created assembly.
- ///
- bool IncludeDebugInformation { get; set; }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/PythonCompiler.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/PythonCompiler.cs
deleted file mode 100644
index 30d4063580b..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/PythonCompiler.cs
+++ /dev/null
@@ -1,282 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.IO;
-using System.Reflection;
-using System.Reflection.Emit;
-using System.Resources;
-
-using IronPython.Hosting;
-using IronPython.Runtime;
-using IronPython.Runtime.Operations;
-using Microsoft.Scripting;
-using Microsoft.Scripting.Hosting;
-
-namespace ICSharpCode.Python.Build.Tasks
-{
- ///
- /// Wraps the IronPython.Hosting.PythonCompiler class so it
- /// implements the IPythonCompiler interface.
- ///
- public class PythonCompiler : IPythonCompiler
- {
- IList sourceFiles;
- IList referencedAssemblies;
- IList resourceFiles;
- PEFileKinds targetKind = PEFileKinds.Dll;
- PortableExecutableKinds executableKind = PortableExecutableKinds.ILOnly;
- ImageFileMachine machine = ImageFileMachine.I386;
- string mainFile = String.Empty;
- bool includeDebugInformation;
- string outputAssembly = String.Empty;
-
- public PythonCompiler()
- {
- }
-
- public IList SourceFiles {
- get { return sourceFiles; }
- set { sourceFiles = value; }
- }
-
- public IList ReferencedAssemblies {
- get { return referencedAssemblies; }
- set { referencedAssemblies = value; }
- }
-
- public IList ResourceFiles {
- get { return resourceFiles; }
- set { resourceFiles = value; }
- }
-
- public PEFileKinds TargetKind {
- get { return targetKind; }
- set { targetKind = value; }
- }
-
- public PortableExecutableKinds ExecutableKind {
- get { return executableKind; }
- set { executableKind = value; }
- }
-
- public ImageFileMachine Machine {
- get { return machine; }
- set { machine = value; }
- }
-
- public string MainFile {
- get { return mainFile; }
- set { mainFile = value; }
- }
-
- public string OutputAssembly {
- get { return outputAssembly; }
- set { outputAssembly = value; }
- }
-
- public bool IncludeDebugInformation {
- get { return includeDebugInformation; }
- set { includeDebugInformation = value; }
- }
-
- ///
- /// The compilation requires us to change into the compile output folder since the
- /// AssemblyBuilder.Save does not use a full path when generating the assembly.
- ///
- public void Compile()
- {
- VerifyParameters();
-
- // Compile the source files to a dll first.
- ScriptEngine engine = IronPython.Hosting.Python.CreateEngine();
- Dictionary dictionary = new Dictionary();
- dictionary.Add("mainModule", mainFile);
- string outputAssemblyDll = Path.ChangeExtension(outputAssembly, ".dll");
- ClrModule.CompileModules(DefaultContext.Default, outputAssemblyDll, dictionary, ToStringArray(sourceFiles));
-
- // Generate an executable if required.
- if (targetKind != PEFileKinds.Dll) {
- // Change into compilation folder.
- string originalFolder = Directory.GetCurrentDirectory();
- try {
- string compileFolder = Path.Combine(originalFolder, Path.GetDirectoryName(outputAssembly));
- Directory.SetCurrentDirectory(compileFolder);
- GenerateExecutable(outputAssemblyDll);
- } finally {
- Directory.SetCurrentDirectory(originalFolder);
- }
- }
- }
-
- ///
- /// Verifies the compiler parameters that have been set correctly.
- ///
- public void VerifyParameters()
- {
- if ((mainFile == null) && (targetKind != PEFileKinds.Dll)) {
- throw new PythonCompilerException(Resources.NoMainFileSpecified);
- }
- }
-
- public void Dispose()
- {
- }
-
- ///
- /// Generates an executable from the already compiled dll.
- ///
- void GenerateExecutable(string outputAssemblyDll)
- {
- string outputAssemblyFileNameWithoutExtension = Path.GetFileNameWithoutExtension(outputAssembly);
- AssemblyName assemblyName = new AssemblyName(outputAssemblyFileNameWithoutExtension);
- AssemblyBuilder assemblyBuilder = PythonOps.DefineDynamicAssembly(assemblyName, AssemblyBuilderAccess.RunAndSave);
- ModuleBuilder moduleBuilder = assemblyBuilder.DefineDynamicModule(outputAssemblyFileNameWithoutExtension, assemblyName.Name + ".exe");
- TypeBuilder typeBuilder = moduleBuilder.DefineType("PythonMain", TypeAttributes.Public);
- MethodBuilder mainMethod = typeBuilder.DefineMethod("Main", MethodAttributes.Public | MethodAttributes.Static, typeof(int), new Type[0]);
-
- MarkMainMethodAsSTA(mainMethod);
- GenerateMainMethodBody(mainMethod, outputAssemblyDll);
-
- // Add resources.
- AddResources(moduleBuilder);
-
- // Create executable.
- typeBuilder.CreateType();
- assemblyBuilder.SetEntryPoint(mainMethod, targetKind);
- assemblyBuilder.Save(assemblyName.Name + ".exe", executableKind, machine);
- }
-
- void MarkMainMethodAsSTA(MethodBuilder mainMethod)
- {
- mainMethod.SetCustomAttribute(typeof(STAThreadAttribute).GetConstructor(Type.EmptyTypes), new byte[0]);
- }
-
- void GenerateMainMethodBody(MethodBuilder mainMethod, string outputAssemblyDll)
- {
- ILGenerator generator = mainMethod.GetILGenerator();
- LocalBuilder exeAssemblyLocalVariable = generator.DeclareLocal(typeof(Assembly));
- LocalBuilder directoryLocalVariable = generator.DeclareLocal(typeof(string));
- LocalBuilder fileNameLocalVariable = generator.DeclareLocal(typeof(string));
-
- generator.EmitCall(OpCodes.Call, typeof(Assembly).GetMethod("GetExecutingAssembly", new Type[0], new ParameterModifier[0]), null);
- generator.Emit(OpCodes.Stloc_0);
-
- generator.Emit(OpCodes.Ldloc_0);
- generator.EmitCall(OpCodes.Callvirt, typeof(Assembly).GetMethod("get_Location"), null);
- generator.EmitCall(OpCodes.Call, typeof(Path).GetMethod("GetDirectoryName", new Type[] {typeof(String)}, new ParameterModifier[0]), null);
- generator.Emit(OpCodes.Stloc_1);
-
- generator.Emit(OpCodes.Ldloc_1);
- generator.Emit(OpCodes.Ldstr, Path.GetFileName(outputAssemblyDll));
- generator.EmitCall(OpCodes.Call, typeof(Path).GetMethod("Combine", new Type[] {typeof(String), typeof(String)}, new ParameterModifier[0]), null);
- generator.Emit(OpCodes.Stloc_2);
-
- generator.Emit(OpCodes.Ldloc_2);
- generator.EmitCall(OpCodes.Call, typeof(Assembly).GetMethod("LoadFile", new Type[] {typeof(String)}, new ParameterModifier[0]), null);
- generator.Emit(OpCodes.Ldstr, Path.GetFileNameWithoutExtension(mainFile));
-
- // Add referenced assemblies.
- AddReferences(generator);
-
- generator.EmitCall(OpCodes.Call, typeof(PythonOps).GetMethod("InitializeModule"), new Type[0]);
- generator.Emit(OpCodes.Ret);
- }
-
- ///
- /// Converts an IList into a string[].
- ///
- string[] ToStringArray(IList items)
- {
- string[] array = new string[items.Count];
- items.CopyTo(array, 0);
- return array;
- }
-
- ///
- /// Adds reference information to the IL.
- ///
- void AddReferences(ILGenerator generator)
- {
- if (referencedAssemblies.Count > 0) {
- generator.Emit(OpCodes.Ldc_I4, referencedAssemblies.Count);
- generator.Emit(OpCodes.Newarr, typeof(String));
-
- for (int i = 0; i < referencedAssemblies.Count; ++i) {
- generator.Emit(OpCodes.Dup);
- generator.Emit(OpCodes.Ldc_I4, i);
- string assemblyFileName = referencedAssemblies[i];
- Assembly assembly = Assembly.ReflectionOnlyLoadFrom(assemblyFileName);
- generator.Emit(OpCodes.Ldstr, assembly.FullName);
- generator.Emit(OpCodes.Stelem_Ref);
- }
- } else {
- generator.Emit(OpCodes.Ldnull);
- }
- }
-
- ///
- /// Embeds resources into the assembly.
- ///
- void AddResources(ModuleBuilder moduleBuilder)
- {
- foreach (ResourceFile resourceFile in resourceFiles) {
- AddResource(moduleBuilder, resourceFile);
- }
- }
-
- ///
- /// Embeds a single resource into the assembly.
- ///
- void AddResource(ModuleBuilder moduleBuilder, ResourceFile resourceFile)
- {
- string fileName = resourceFile.FileName;
- string extension = Path.GetExtension(fileName).ToLowerInvariant();
- if (extension == ".resources") {
- string fullFileName = Path.GetFileName(fileName);
- IResourceWriter resourceWriter = moduleBuilder.DefineResource(fullFileName, resourceFile.Name, ResourceAttributes.Public);
- AddResources(resourceWriter, fileName);
- } else {
- moduleBuilder.DefineManifestResource(resourceFile.Name, new FileStream(fileName, FileMode.Open), ResourceAttributes.Public);
- }
- }
-
- void AddResources(IResourceWriter resourceWriter, string fileName)
- {
- ResourceReader resourceReader = new ResourceReader(fileName);
- using (resourceReader) {
- IDictionaryEnumerator enumerator = resourceReader.GetEnumerator();
- while (enumerator.MoveNext()) {
- string key = enumerator.Key as string;
- Stream resourceStream = enumerator.Value as Stream;
- if (resourceStream != null) {
- BinaryReader reader = new BinaryReader(resourceStream);
- MemoryStream stream = new MemoryStream();
- byte[] bytes = reader.ReadBytes((int)resourceStream.Length);
- stream.Write(bytes, 0, bytes.Length);
- resourceWriter.AddResource(key, stream);
- } else {
- resourceWriter.AddResource(key, enumerator.Value);
- }
- }
- }
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/PythonCompilerException.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/PythonCompilerException.cs
deleted file mode 100644
index 71535e84649..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/PythonCompilerException.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-
-namespace ICSharpCode.Python.Build.Tasks
-{
- public class PythonCompilerException : ApplicationException
- {
- public PythonCompilerException(string message) : base(message)
- {
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/PythonCompilerTask.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/PythonCompilerTask.cs
deleted file mode 100644
index 7c8ce1da92a..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/PythonCompilerTask.cs
+++ /dev/null
@@ -1,313 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Reflection;
-using System.Reflection.Emit;
-using IronPython.Hosting;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using Microsoft.Scripting;
-
-namespace ICSharpCode.Python.Build.Tasks
-{
- ///
- /// Python compiler task.
- ///
- public class PythonCompilerTask : Task
- {
- IPythonCompiler compiler;
- ITaskItem[] sources;
- ITaskItem[] references;
- ITaskItem[] resources;
- string targetType;
- string mainFile;
- string outputAssembly;
- bool emitDebugInformation;
- string platform;
-
- public PythonCompilerTask()
- : this(new PythonCompiler())
- {
- }
-
- public PythonCompilerTask(IPythonCompiler compiler)
- {
- this.compiler = compiler;
- }
-
- ///
- /// Gets or sets the source files that will be compiled.
- ///
- public ITaskItem[] Sources {
- get { return sources; }
- set { sources = value; }
- }
-
- ///
- /// Gets or sets the resources to be compiled.
- ///
- public ITaskItem[] Resources {
- get { return resources; }
- set { resources = value; }
- }
-
- ///
- /// Gets or sets the output assembly type.
- ///
- public string TargetType {
- get { return targetType; }
- set { targetType = value; }
- }
-
- ///
- /// Gets or sets the file that contains the main entry point.
- ///
- public string MainFile {
- get { return mainFile; }
- set { mainFile = value; }
- }
-
- ///
- /// Gets or sets the output assembly filename.
- ///
- public string OutputAssembly {
- get { return outputAssembly; }
- set { outputAssembly = value; }
- }
-
- ///
- /// Gets or sets the platform that will be targeted by the compiler (e.g. x86).
- ///
- public string Platform {
- get { return platform; }
- set { platform = value; }
- }
-
- ///
- /// Gets or sets whether the compiler should include debug
- /// information in the created assembly.
- ///
- public bool EmitDebugInformation {
- get { return emitDebugInformation; }
- set { emitDebugInformation = value; }
- }
-
- ///
- /// Gets or sets the assembly references.
- ///
- public ITaskItem[] References {
- get { return references; }
- set { references = value; }
- }
-
- ///
- /// Executes the compiler.
- ///
- public override bool Execute()
- {
- using (compiler) {
- // Set what sort of assembly we are generating
- // (e.g. WinExe, Exe or Dll)
- compiler.TargetKind = GetPEFileKind(targetType);
-
- compiler.ExecutableKind = GetExecutableKind(platform);
- compiler.Machine = GetMachine(platform);
-
- compiler.SourceFiles = GetFiles(sources, false);
- compiler.ReferencedAssemblies = GetFiles(references, true);
- compiler.ResourceFiles = GetResourceFiles(resources);
- compiler.MainFile = mainFile;
- compiler.OutputAssembly = outputAssembly;
- compiler.IncludeDebugInformation = emitDebugInformation;
-
- // Compile the code.
- try {
- compiler.Compile();
- return true;
- } catch (SyntaxErrorException ex) {
- LogSyntaxError(ex);
- } catch (IOException ex) {
- LogError(ex.Message);
- } catch (PythonCompilerException ex) {
- LogError(ex.Message);
- }
- }
- return false;
- }
-
- ///
- /// Gets the current folder where this task is being executed from.
- ///
- protected virtual string GetCurrentFolder()
- {
- return Directory.GetCurrentDirectory();
- }
-
- ///
- /// Logs any error message that occurs during compilation. Default implementation
- /// is to use the MSBuild task's base.Log.LogError(...)
- ///
- protected virtual void LogError(string message, string errorCode, string file, int lineNumber, int columnNumber, int endLineNumber, int endColumnNumber)
- {
- Log.LogError(null, errorCode, null, file, lineNumber, columnNumber, endLineNumber, endColumnNumber, message);
- }
-
- void LogError(string message)
- {
- LogError(message, null, null, 0, 0, 0, 0);
- }
-
- void LogSyntaxError(SyntaxErrorException ex)
- {
- string fileName = GetFileName(ex, sources);
- LogError(ex.Message, ex.ErrorCode.ToString(), fileName, ex.Line, ex.Column, ex.RawSpan.End.Line, ex.RawSpan.End.Column);
- }
-
- ///
- /// Matches the syntax exception SourcePath against filenames being compiled. The
- /// syntax exception only contains the file name without its path and without its file extension.
- ///
- string GetFileName(SyntaxErrorException ex, ITaskItem[] sources)
- {
- if (ex.SourcePath == null) {
- return null;
- }
-
- string sourcePath = ex.SourcePath.Replace('\\', '.');
- foreach (ITaskItem item in sources) {
- string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(item.ItemSpec);
- if (fileNameWithoutExtension == sourcePath) {
- return item.ItemSpec;
- }
- }
- string fileName = sourcePath + ".py";
- return Path.Combine(GetCurrentFolder(), fileName);
- }
-
- ///
- /// Maps from the target type string to the PEFileKind
- /// needed by the compiler.
- ///
- static PEFileKinds GetPEFileKind(string targetType)
- {
- if (targetType != null) {
- switch (targetType.ToLowerInvariant()) {
- case "winexe":
- return PEFileKinds.WindowApplication;
- case "library":
- return PEFileKinds.Dll;
- }
- }
- return PEFileKinds.ConsoleApplication;
- }
-
- ///
- /// Converts from an array of ITaskItems to a list of
- /// strings, each containing the ITaskItem filename.
- ///
- IList GetFiles(ITaskItem[] taskItems, bool fullPath)
- {
- List files = new List();
- if (taskItems != null) {
- foreach (ITaskItem item in taskItems) {
- string fileName = item.ItemSpec;
- if (fullPath) {
- fileName = GetFullPath(item.ItemSpec);
- }
- files.Add(fileName);
- }
- }
- return files;
- }
-
- ///
- /// Converts the string into a PortableExecutableKinds enum.
- ///
- PortableExecutableKinds GetExecutableKind(string platform)
- {
- switch (platform) {
- case "x86":
- return PortableExecutableKinds.ILOnly | PortableExecutableKinds.Required32Bit;
- case "Itanium":
- case "x64":
- return PortableExecutableKinds.ILOnly | PortableExecutableKinds.PE32Plus;
- }
- return PortableExecutableKinds.ILOnly;
- }
-
- ///
- /// Gets the machine associated with a PortalExecutableKind.
- ///
- ImageFileMachine GetMachine(string platform)
- {
- switch (platform) {
- case "Itanium":
- return ImageFileMachine.IA64;
- case "x64":
- return ImageFileMachine.AMD64;
- }
- return ImageFileMachine.I386;
- }
-
- ///
- /// Converts from an array of ITaskItems to a list of
- /// ResourceFiles.
- ///
- ///
- /// The resource name is the filename without any preceding
- /// path information.
- ///
- IList GetResourceFiles(ITaskItem[] taskItems)
- {
- List files = new List();
- if (taskItems != null) {
- foreach (ITaskItem item in taskItems) {
- string resourceFileName = GetFullPath(item.ItemSpec);
- string resourceName = GetResourceName(item);
- ResourceFile resourceFile = new ResourceFile(resourceName, resourceFileName);
- files.Add(resourceFile);
- }
- }
- return files;
- }
-
- string GetResourceName(ITaskItem item)
- {
- string logicalResourceName = item.GetMetadata("LogicalName");
- if (!String.IsNullOrEmpty(logicalResourceName)) {
- return logicalResourceName;
- }
- return Path.GetFileName(item.ItemSpec);
- }
-
- ///
- /// Takes a relative path to a file and turns it into the full path using the current folder
- /// as the base directory.
- ///
- string GetFullPath(string fileName)
- {
- if (!Path.IsPathRooted(fileName)) {
- return Path.GetFullPath(Path.Combine(GetCurrentFolder(), fileName));
- }
- return fileName;
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/ResourceFile.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/ResourceFile.cs
deleted file mode 100644
index 77c82cec707..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/ResourceFile.cs
+++ /dev/null
@@ -1,58 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-
-namespace ICSharpCode.Python.Build.Tasks
-{
- ///
- /// Stores the name and filename of a resource that will be embedded by the PythonCompiler.
- ///
- public class ResourceFile
- {
- string name;
- string fileName;
- bool isPublic;
-
- public ResourceFile(string name, string fileName) : this(name, fileName, true)
- {
- }
-
- public ResourceFile(string name, string fileName, bool isPublic)
- {
- this.name = name;
- this.fileName = fileName;
- this.isPublic = isPublic;
- }
-
- public string Name {
- get { return name; }
- set { name = value; }
- }
-
- public string FileName {
- get { return fileName; }
- set { fileName = value; }
- }
-
- public bool IsPublic {
- get { return isPublic; }
- set { isPublic = value; }
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/Resources.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/Resources.cs
deleted file mode 100644
index 4fc6db072df..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Project/Src/Resources.cs
+++ /dev/null
@@ -1,36 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-
-namespace ICSharpCode.Python.Build.Tasks
-{
- public class Resources
- {
- Resources()
- {
- }
-
- ///
- /// No main file specified when trying to compile an application
- ///
- public static string NoMainFileSpecified {
- get { return "No main file specified."; }
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/AssemblyInfo.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/AssemblyInfo.cs
deleted file mode 100644
index 7dffcdad0bb..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/AssemblyInfo.cs
+++ /dev/null
@@ -1,49 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-// Information about this assembly is defined by the following
-// attributes.
-//
-// change them to the information which is associated with the assembly
-// you compile.
-
-[assembly: AssemblyTitle("Python.Build.Tasks.Tests")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("Python.Build.Tasks.Tests")]
-[assembly: AssemblyCopyright("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// This sets the default COM visibility of types in the assembly to invisible.
-// If you need to expose a type to COM, use [ComVisible(true)] on that type.
-[assembly: ComVisible(false)]
-
-// The assembly version has following format :
-//
-// Major.Minor.Build.Revision
-//
-// You can specify all values by your own or you can build default build and revision
-// numbers with the '*' character (the default):
-
-[assembly: AssemblyVersion("0.3")]
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/CompileResourcesTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/CompileResourcesTestFixture.cs
deleted file mode 100644
index 358140d0770..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/CompileResourcesTestFixture.cs
+++ /dev/null
@@ -1,90 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection.Emit;
-using ICSharpCode.Python.Build.Tasks;
-using IronPython.Hosting;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Tests that resources are compiled using the PythonCompilerTask.
- ///
- [TestFixture]
- public class CompileResourcesTestFixture
- {
- MockPythonCompiler mockCompiler;
- TaskItem resourceTaskItem;
- ResourceFile resourceFile;
- PythonCompilerTask compiler;
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compiler = new PythonCompilerTask(mockCompiler);
- TaskItem sourceTaskItem = new TaskItem("test.py");
-
- compiler.Sources = new ITaskItem[] {sourceTaskItem};
- compiler.TargetType = "Exe";
- compiler.OutputAssembly = "test.exe";
-
- resourceTaskItem = new TaskItem(@"C:\Projects\Test\Test.resources");
- compiler.Resources = new ITaskItem[] {resourceTaskItem};
-
- compiler.Execute();
-
- if (mockCompiler.ResourceFiles != null && mockCompiler.ResourceFiles.Count > 0) {
- resourceFile = mockCompiler.ResourceFiles[0];
- }
- }
-
- [Test]
- public void OneResourceFile()
- {
- Assert.AreEqual(1, mockCompiler.ResourceFiles.Count);
- }
-
- [Test]
- public void ResourceFileName()
- {
- Assert.AreEqual(resourceTaskItem.ItemSpec, resourceFile.FileName);
- }
-
- ///
- /// The resource name should be the same as the filename without
- /// any preceding path information.
- ///
- [Test]
- public void ResourceName()
- {
- Assert.AreEqual("Test.resources", resourceFile.Name);
- }
-
- [Test]
- public void CompilerTaskResources()
- {
- ITaskItem[] resources = compiler.Resources;
- Assert.AreEqual(resourceTaskItem, resources[0]);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/CompileSingleSourceFileTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/CompileSingleSourceFileTestFixture.cs
deleted file mode 100644
index 3fd9e653c39..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/CompileSingleSourceFileTestFixture.cs
+++ /dev/null
@@ -1,120 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection.Emit;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Tests that the python compiler task compiles a single source file.
- ///
- [TestFixture]
- public class CompileSingleSourceFileTestFixture
- {
- MockPythonCompiler mockCompiler;
- TaskItem sourceTaskItem;
- TaskItem systemXmlReferenceTaskItem;
- TaskItem systemDataReferenceTaskItem;
- PythonCompilerTask compiler;
- bool success;
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compiler = new PythonCompilerTask(mockCompiler);
- sourceTaskItem = new TaskItem("test.py");
- compiler.Sources = new ITaskItem[] {sourceTaskItem};
- compiler.TargetType = "Exe";
- compiler.OutputAssembly = "test.exe";
-
- systemDataReferenceTaskItem = new TaskItem(@"C:\Windows\Microsoft.NET\Framework\2.0\System.Data.dll");
- systemXmlReferenceTaskItem = new TaskItem(@"C:\Windows\Microsoft.NET\Framework\2.0\System.Xml.dll");
- compiler.References = new ITaskItem[] {systemDataReferenceTaskItem, systemXmlReferenceTaskItem};
-
- success = compiler.Execute();
- }
-
- [Test]
- public void CompilationSucceeded()
- {
- Assert.IsTrue(success);
- }
-
- [Test]
- public void OneSourceFile()
- {
- Assert.AreEqual(1, mockCompiler.SourceFiles.Count);
- }
-
- [Test]
- public void SourceFileName()
- {
- Assert.AreEqual("test.py", mockCompiler.SourceFiles[0]);
- }
-
- [Test]
- public void IsCompileCalled()
- {
- Assert.IsTrue(mockCompiler.CompileCalled);
- }
-
- [Test]
- public void IsDisposeCalled()
- {
- Assert.IsTrue(mockCompiler.DisposeCalled);
- }
-
- [Test]
- public void TargetKindIsExe()
- {
- Assert.AreEqual(PEFileKinds.ConsoleApplication, mockCompiler.TargetKind);
- }
-
- [Test]
- public void OutputAssembly()
- {
- Assert.AreEqual("test.exe", mockCompiler.OutputAssembly);
- }
-
- [Test]
- public void DebugInfo()
- {
- Assert.IsFalse(mockCompiler.IncludeDebugInformation);
- }
-
- [Test]
- public void TwoReferences()
- {
- Assert.AreEqual(2, mockCompiler.ReferencedAssemblies.Count);
- }
-
- [Test]
- public void PythonCompilerTaskReferences()
- {
- ITaskItem[] references = compiler.References;
- Assert.AreEqual(systemDataReferenceTaskItem, references[0]);
- Assert.AreEqual(systemXmlReferenceTaskItem, references[1]);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/DifferentTargetTypesTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/DifferentTargetTypesTestFixture.cs
deleted file mode 100644
index 41b3c36ff18..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/DifferentTargetTypesTestFixture.cs
+++ /dev/null
@@ -1,84 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection.Emit;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Tests that the PythonCompiler correctly compiles to a
- /// windows app when the TargetType is set to WinExe".
- ///
- [TestFixture]
- public class DifferentTargetTypesTestFixture
- {
- MockPythonCompiler mockCompiler;
- TaskItem sourceTaskItem;
- PythonCompilerTask compilerTask;
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compilerTask = new PythonCompilerTask(mockCompiler);
- sourceTaskItem = new TaskItem("test.py");
- compilerTask.Sources = new ITaskItem[] {sourceTaskItem};
- }
-
- [Test]
- public void CompiledToWindowsApp()
- {
- compilerTask.TargetType = "WinExe";
- compilerTask.Execute();
-
- Assert.AreEqual(PEFileKinds.WindowApplication, mockCompiler.TargetKind);
- }
-
- [Test]
- public void CompiledToWindowsAppWhenTargetTypeLowerCase()
- {
- compilerTask.TargetType = "winexe";
- compilerTask.Execute();
-
- Assert.AreEqual(PEFileKinds.WindowApplication, mockCompiler.TargetKind);
- }
-
- [Test]
- public void CompiledToDll()
- {
- compilerTask.TargetType = "Library";
- compilerTask.Execute();
-
- Assert.AreEqual(PEFileKinds.Dll, mockCompiler.TargetKind);
- }
-
- [Test]
- public void NullTargetTypeCompilesToConsoleApp()
- {
- compilerTask.TargetType = null;
- compilerTask.Execute();
-
- Assert.AreEqual(PEFileKinds.ConsoleApplication, mockCompiler.TargetKind);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/DummyPythonCompilerTask.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/DummyPythonCompilerTask.cs
deleted file mode 100644
index 9720747f220..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/DummyPythonCompilerTask.cs
+++ /dev/null
@@ -1,109 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using ICSharpCode.Python.Build.Tasks;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Overrides the GetCurrentFolder to return a predefined string.
- ///
- public class DummyPythonCompilerTask : PythonCompilerTask
- {
- string currentFolder;
- string loggedErrorMessage;
- string loggedErrorCode;
- string loggedErrorFile;
- int loggedStartColumn = -1;
- int loggedStartLine = -1;
- int loggedEndLine = -1;
- int loggedEndColumn = -1;
-
- public DummyPythonCompilerTask(IPythonCompiler compiler, string currentFolder)
- : base(compiler)
- {
- this.currentFolder = currentFolder;
- }
-
- ///
- /// Gets the error message passed to the LogError method.
- ///
- public string LoggedErrorMessage {
- get { return loggedErrorMessage; }
- }
-
- ///
- /// Gets the error code passed to the LogError method.
- ///
- public string LoggedErrorCode {
- get { return loggedErrorCode; }
- }
-
- ///
- /// Gets the file passed to the LogError method.
- ///
- public string LoggedErrorFile {
- get { return loggedErrorFile; }
- }
-
- ///
- /// Gets the start line passed to the LogError method.
- ///
- public int LoggedStartLine {
- get { return loggedStartLine; }
- }
-
- ///
- /// Gets the end line passed to the LogError method.
- ///
- public int LoggedEndLine {
- get { return loggedEndLine; }
- }
-
- ///
- /// Gets the start column passed to the LogError method.
- ///
- public int LoggedStartColumn {
- get { return loggedStartColumn; }
- }
-
- ///
- /// Gets the end column passed to the LogError method.
- ///
- public int LoggedEndColumn {
- get { return loggedEndColumn; }
- }
-
- protected override string GetCurrentFolder()
- {
- return currentFolder;
- }
-
- protected override void LogError(string message, string errorCode, string file, int lineNumber, int columnNumber, int endLineNumber, int endColumnNumber)
- {
- loggedErrorMessage = message;
- loggedErrorCode = errorCode;
- loggedErrorFile = file;
- loggedStartColumn = columnNumber;
- loggedStartLine = lineNumber;
- loggedEndColumn = endColumnNumber;
- loggedEndLine = endLineNumber;
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/IOErrorTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/IOErrorTestFixture.cs
deleted file mode 100644
index 1c459b2e8b9..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/IOErrorTestFixture.cs
+++ /dev/null
@@ -1,72 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection;
-using System.Reflection.Emit;
-using IronPython.Runtime;
-using IronPython.Runtime.Operations;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using Microsoft.Scripting;
-using Microsoft.Scripting.Hosting;
-using Microsoft.Scripting.Runtime;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Tests that an IOException is caught and logged.
- ///
- [TestFixture]
- public class IOErrorTestFixture
- {
- MockPythonCompiler mockCompiler;
- DummyPythonCompilerTask compiler;
- bool success;
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compiler = new DummyPythonCompilerTask(mockCompiler, @"C:\Projects\MyProject");
- compiler.TargetType = "Exe";
- compiler.OutputAssembly = "test.exe";
-
- TaskItem sourceFile = new TaskItem(@"D:\Projects\MyProject\test.py");
- compiler.Sources = new ITaskItem[] {sourceFile};
-
- mockCompiler.ThrowExceptionAtCompile = PythonOps.IOError("Could not find main file test.py");
-
- success = compiler.Execute();
- }
-
- [Test]
- public void ExecuteFailed()
- {
- Assert.IsFalse(success);
- }
-
- [Test]
- public void IsExceptionMessageLogged()
- {
- Assert.AreEqual("Could not find main file test.py", compiler.LoggedErrorMessage);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/IncludeDebugInfoTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/IncludeDebugInfoTestFixture.cs
deleted file mode 100644
index ea6d5edfd78..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/IncludeDebugInfoTestFixture.cs
+++ /dev/null
@@ -1,77 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection.Emit;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Tests that the compiler includes debug info in the
- /// generated assembly.
- ///
- [TestFixture]
- public class IncludeDebugInfoTestFixture
- {
- MockPythonCompiler mockCompiler;
- TaskItem sourceTaskItem;
- PythonCompilerTask compiler;
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compiler = new PythonCompilerTask(mockCompiler);
- sourceTaskItem = new TaskItem("test.py");
- compiler.Sources = new ITaskItem[] {sourceTaskItem};
- compiler.TargetType = "Exe";
- compiler.OutputAssembly = "test.exe";
- compiler.EmitDebugInformation = true;
-
- compiler.Execute();
- }
-
- [Test]
- public void DebugInfoIncluded()
- {
- Assert.IsTrue(mockCompiler.IncludeDebugInformation);
- }
-
- [Test]
- public void PythonCompilerTaskTargetType()
- {
- Assert.AreEqual("Exe", compiler.TargetType);
- }
-
- [Test]
- public void PythonCompilerTaskOutputAssembly()
- {
- Assert.AreEqual("test.exe", compiler.OutputAssembly);
- }
-
- [Test]
- public void PythonCompilerTaskEmitDebugInfo()
- {
- Assert.AreEqual(true, compiler.EmitDebugInformation);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/LogicalResourceNamesTests.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/LogicalResourceNamesTests.cs
deleted file mode 100644
index f23443a7f7c..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/LogicalResourceNamesTests.cs
+++ /dev/null
@@ -1,59 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- [TestFixture]
- public class LogicalResourceNamesTests
- {
- MockPythonCompiler mockCompiler;
- PythonCompilerTask compilerTask;
-
- void CreatePythonCompilerTask()
- {
- mockCompiler = new MockPythonCompiler();
- compilerTask = new PythonCompilerTask(mockCompiler);
- compilerTask.TargetType = "Exe";
- compilerTask.OutputAssembly = "test.exe";
- }
-
- [Test]
- public void Execute_ResourceHasLogicalNameSetInTaskItemMetadata_ResourceNamePassedToCompilerUsesLogicalName()
- {
- CreatePythonCompilerTask();
-
- TaskItem resourceTaskItem = new TaskItem("test.xaml");
- resourceTaskItem.SetMetadata("LogicalName", "MyLogicalResourceName");
- compilerTask.Resources = new ITaskItem[] {resourceTaskItem};
- compilerTask.Execute();
-
- ResourceFile resourceFile = mockCompiler.ResourceFiles[0];
- string resourceName = resourceFile.Name;
-
- string expectedResourceName = "MyLogicalResourceName";
-
- Assert.AreEqual(expectedResourceName, resourceName);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/MainEntryPointTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/MainEntryPointTestFixture.cs
deleted file mode 100644
index c1b3290aba2..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/MainEntryPointTestFixture.cs
+++ /dev/null
@@ -1,72 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection.Emit;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Tests that the main entry point is set in the PythonCompiler
- /// by the PythonCompilerTask.
- ///
- [TestFixture]
- public class MainEntryPointTestFixture
- {
- MockPythonCompiler mockCompiler;
- PythonCompilerTask compilerTask;
- TaskItem mainTaskItem;
- TaskItem classTaskItem;
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compilerTask = new PythonCompilerTask(mockCompiler);
- mainTaskItem = new TaskItem("main.py");
- classTaskItem = new TaskItem("class1.py");
- compilerTask.Sources = new ITaskItem[] {mainTaskItem, classTaskItem};
- compilerTask.MainFile = "main.py";
- compilerTask.Execute();
- }
-
- [Test]
- public void MainFile()
- {
- Assert.AreEqual("main.py", mockCompiler.MainFile);
- }
-
- [Test]
- public void TaskMainFile()
- {
- Assert.AreEqual("main.py", compilerTask.MainFile);
- }
-
- [Test]
- public void TaskSources()
- {
- ITaskItem[] sources = compilerTask.Sources;
- Assert.AreEqual(sources[0], mainTaskItem);
- Assert.AreEqual(sources[1], classTaskItem);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/MissingMainEntryPointTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/MissingMainEntryPointTestFixture.cs
deleted file mode 100644
index fe9e37e90c5..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/MissingMainEntryPointTestFixture.cs
+++ /dev/null
@@ -1,67 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection.Emit;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Tests that an error is reported when the mainFile is missing and we are trying to compile
- /// an executable.
- ///
- [TestFixture]
- public class MissingMainEntryPointTestFixture
- {
- MockPythonCompiler mockCompiler;
- DummyPythonCompilerTask compiler;
- bool success;
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compiler = new DummyPythonCompilerTask(mockCompiler, @"C:\Projects\MyProject");
- compiler.TargetType = "Exe";
- compiler.OutputAssembly = "test.exe";
-
- TaskItem sourceFile = new TaskItem(@"D:\Projects\MyProject\test.py");
- compiler.Sources = new ITaskItem[] {sourceFile};
-
- mockCompiler.ThrowExceptionAtCompile = new PythonCompilerException("Missing main file.");
-
- success = compiler.Execute();
- }
-
- [Test]
- public void ExecuteFailed()
- {
- Assert.IsFalse(success);
- }
-
- [Test]
- public void IsExceptionMessageLogged()
- {
- Assert.AreEqual("Missing main file.", compiler.LoggedErrorMessage);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/MockPythonCompiler.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/MockPythonCompiler.cs
deleted file mode 100644
index 9ce7f6e6e30..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/MockPythonCompiler.cs
+++ /dev/null
@@ -1,160 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using System.Reflection;
-using System.Reflection.Emit;
-using ICSharpCode.Python.Build.Tasks;
-using IronPython.Hosting;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Implements the IPythonCompiler interface so the
- /// PythonCompiler task can be tested.
- ///
- public class MockPythonCompiler : IPythonCompiler
- {
- IList sourceFiles;
- bool compileCalled;
- bool disposeCalled;
- PEFileKinds targetKind;
- PortableExecutableKinds executableKind;
- ImageFileMachine machine;
- string mainFile;
- string outputAssembly;
- bool includeDebugInformation;
- IList referencedAssemblies;
- IList resourceFiles;
- Exception throwExceptionAtCompile;
-
- public MockPythonCompiler()
- {
- }
-
- ///
- /// Gets or sets the source files to compiler.
- ///
- public IList SourceFiles {
- get { return sourceFiles; }
- set { sourceFiles = value; }
- }
-
- ///
- /// Gets or sets the filenames of the referenced assemblies.
- ///
- public IList ReferencedAssemblies {
- get { return referencedAssemblies; }
- set { referencedAssemblies = value; }
- }
-
- ///
- /// Gets or sets the resources to be compiled.
- ///
- public IList ResourceFiles {
- get { return resourceFiles; }
- set { resourceFiles = value; }
- }
-
- ///
- /// Gets or sets the exception that will be thrown when the Compile method is called.
- ///
- public Exception ThrowExceptionAtCompile {
- get { return throwExceptionAtCompile; }
- set { throwExceptionAtCompile = value; }
- }
-
- ///
- /// Compiles the source code.
- ///
- public void Compile()
- {
- compileCalled = true;
-
- if (throwExceptionAtCompile != null) {
- throw throwExceptionAtCompile;
- }
- }
-
- ///
- /// Disposes the compiler.
- ///
- public void Dispose()
- {
- disposeCalled = true;
- }
-
- ///
- /// Gets or sets the type of the compiled assembly.
- ///
- public PEFileKinds TargetKind {
- get { return targetKind; }
- set { targetKind = value; }
- }
-
- public PortableExecutableKinds ExecutableKind {
- get { return executableKind; }
- set { executableKind = value; }
- }
-
- public ImageFileMachine Machine {
- get { return machine; }
- set { machine = value; }
- }
-
- ///
- /// Gets or sets the file that contains the main entry point.
- ///
- public string MainFile {
- get { return mainFile; }
- set { mainFile = value; }
- }
-
- ///
- /// Gets or sets the output assembly filename.
- ///
- public string OutputAssembly {
- get { return outputAssembly; }
- set { outputAssembly = value; }
- }
-
- ///
- /// Gets or sets whether the compiler should include debug
- /// information in the created assembly.
- ///
- public bool IncludeDebugInformation {
- get { return includeDebugInformation; }
- set { includeDebugInformation = value; }
- }
-
- ///
- /// Gets whether the Compile method has been called.
- ///
- public bool CompileCalled {
- get { return compileCalled; }
- }
-
- ///
- /// Gets whether the Dispose method has been called.
- ///
- public bool DisposeCalled {
- get { return disposeCalled; }
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/PlatformTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/PlatformTestFixture.cs
deleted file mode 100644
index 6c2a2c63f54..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/PlatformTestFixture.cs
+++ /dev/null
@@ -1,116 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection;
-using System.Reflection.Emit;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Tests the platform information (e.g. x86) is correctly passed to the IPythonCompiler.
- ///
- [TestFixture]
- public class PlatformTestFixture
- {
- MockPythonCompiler mockCompiler;
- TaskItem sourceTaskItem;
- PythonCompilerTask compilerTask;
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compilerTask = new PythonCompilerTask(mockCompiler);
- sourceTaskItem = new TaskItem("test.py");
- compilerTask.Sources = new ITaskItem[] {sourceTaskItem};
- }
-
- [Test]
- public void DefaultPlatformIsILOnly()
- {
- compilerTask.Execute();
- Assert.AreEqual(PortableExecutableKinds.ILOnly, mockCompiler.ExecutableKind);
- }
-
- [Test]
- public void DefaultMachineIs386()
- {
- compilerTask.Execute();
- Assert.AreEqual(ImageFileMachine.I386, mockCompiler.Machine);
- }
-
- [Test]
- public void ExecutableIsCompiledTo32Bit()
- {
- compilerTask.Platform = "x86";
- compilerTask.Execute();
-
- Assert.AreEqual(PortableExecutableKinds.ILOnly | PortableExecutableKinds.Required32Bit, mockCompiler.ExecutableKind);
- }
-
- [Test]
- public void MachineWhenExecutableIsCompiledTo32Bit()
- {
- compilerTask.Platform = "x86";
- compilerTask.Execute();
-
- Assert.AreEqual(ImageFileMachine.I386, mockCompiler.Machine);
- }
-
- [Test]
- public void ExecutableIsCompiledToItanium()
- {
- compilerTask.Platform = "Itanium";
- compilerTask.Execute();
-
- Assert.AreEqual(PortableExecutableKinds.ILOnly | PortableExecutableKinds.PE32Plus, mockCompiler.ExecutableKind);
- }
-
- [Test]
- public void MachineWhenExecutableIsCompiledToItanium()
- {
- compilerTask.Platform = "Itanium";
- compilerTask.Execute();
-
- Assert.AreEqual(ImageFileMachine.IA64, mockCompiler.Machine);
- }
-
- [Test]
- public void ExecutableIsCompiledTo64Bit()
- {
- compilerTask.Platform = "x64";
- compilerTask.Execute();
-
- Assert.AreEqual(PortableExecutableKinds.ILOnly | PortableExecutableKinds.PE32Plus, mockCompiler.ExecutableKind);
- }
-
- [Test]
- public void MachineWhenExecutableIsCompiledTo64Bit()
- {
- compilerTask.Platform = "x64";
- compilerTask.Execute();
-
- Assert.AreEqual(ImageFileMachine.AMD64, mockCompiler.Machine);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/Python.Build.Tasks.Tests.csproj b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/Python.Build.Tasks.Tests.csproj
deleted file mode 100644
index deffa1633a4..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/Python.Build.Tasks.Tests.csproj
+++ /dev/null
@@ -1,90 +0,0 @@
-
-
-
- {833904AB-3CD4-4071-9B48-5770E44685AA}
- Debug
- AnyCPU
- Library
- Python.Build.Tasks.Tests
- Python.Build.Tasks.Tests
- False
- False
- 4
- false
- v4.0
-
-
- ..\..\..\..\..\..\bin\UnitTests\
- true
- Full
- True
- DEBUG;TRACE
- False
-
-
- ..\..\..\..\..\..\bin\UnitTests\
- false
- None
- False
- TRACE
- False
-
-
- False
- Auto
- 4194304
- x86
- 4096
-
-
-
-
- ..\..\RequiredLibraries\IronPython.dll
-
-
-
-
-
- 3.5
-
-
- ..\..\RequiredLibraries\Microsoft.Dynamic.dll
-
-
- ..\..\RequiredLibraries\Microsoft.Scripting.dll
-
-
- ..\..\..\..\..\Tools\NUnit\nunit.framework.dll
- False
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {D332F2D1-2CF1-43B7-903C-844BD5211A7E}
- Python.Build.Tasks
-
-
-
\ No newline at end of file
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/PythonCompilerTests.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/PythonCompilerTests.cs
deleted file mode 100644
index a692ad75b92..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/PythonCompilerTests.cs
+++ /dev/null
@@ -1,57 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection.Emit;
-using ICSharpCode.Python.Build.Tasks;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- [TestFixture]
- public class PythonCompilerTests
- {
- [Test]
- public void NoMainFileSpecifiedForWindowsApplication()
- {
- try {
- PythonCompiler compiler = new PythonCompiler();
- compiler.TargetKind = PEFileKinds.WindowApplication;
- compiler.OutputAssembly = "test.exe";
- compiler.SourceFiles = new string[0];
- compiler.MainFile = null;
- compiler.Compile();
-
- Assert.Fail("Expected PythonCompilerException.");
- } catch (PythonCompilerException ex) {
- Assert.AreEqual(Resources.NoMainFileSpecified, ex.Message);
- }
- }
-
- [Test]
- public void NoMainSpecifiedForLibraryThrowsNoError()
- {
- PythonCompiler compiler = new PythonCompiler();
- compiler.TargetKind = PEFileKinds.Dll;
- compiler.OutputAssembly = "test.dll";
- compiler.SourceFiles = new string[0];
- compiler.MainFile = null;
- compiler.VerifyParameters();
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/RelativeReferenceTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/RelativeReferenceTestFixture.cs
deleted file mode 100644
index df3314470ec..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/RelativeReferenceTestFixture.cs
+++ /dev/null
@@ -1,69 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection.Emit;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Tests that references with a relative path are converted to a full path before being
- /// passed to the PythonCompiler.
- ///
- [TestFixture]
- public class RelativeReferenceTestFixture
- {
- MockPythonCompiler mockCompiler;
- TaskItem referenceTaskItem;
- TaskItem fullPathReferenceTaskItem;
- DummyPythonCompilerTask compiler;
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compiler = new DummyPythonCompilerTask(mockCompiler, @"C:\Projects\MyProject");
- compiler.TargetType = "Exe";
- compiler.OutputAssembly = "test.exe";
-
- referenceTaskItem = new TaskItem(@"..\RequiredLibraries\MyReference.dll");
- fullPathReferenceTaskItem = new TaskItem(@"C:\Projects\Test\MyTest.dll");
- compiler.References = new ITaskItem[] {referenceTaskItem, fullPathReferenceTaskItem};
-
- compiler.Execute();
- }
-
- [Test]
- public void RelativePathReferenceItemPassedToCompilerWithFullPath()
- {
- string fileName = mockCompiler.ReferencedAssemblies[0];
- Assert.AreEqual(@"C:\Projects\RequiredLibraries\MyReference.dll", fileName);
- }
-
- [Test]
- public void FullPathReferenceItemUnchangedWhenPassedToCompiler()
- {
- string fileName = mockCompiler.ReferencedAssemblies[1];
- Assert.AreEqual(fullPathReferenceTaskItem.ItemSpec, fileName);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/RelativeResourceFileTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/RelativeResourceFileTestFixture.cs
deleted file mode 100644
index b0d6d1695f0..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/RelativeResourceFileTestFixture.cs
+++ /dev/null
@@ -1,69 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection.Emit;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Tests that resoures with a relative path are converted to a full path before being
- /// passed to the PythonCompiler.
- ///
- [TestFixture]
- public class RelativeResourceFileTestFixture
- {
- MockPythonCompiler mockCompiler;
- TaskItem resourceTaskItem;
- TaskItem fullPathResourceTaskItem;
- DummyPythonCompilerTask compiler;
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compiler = new DummyPythonCompilerTask(mockCompiler, @"C:\Projects\MyProject");
- compiler.TargetType = "Exe";
- compiler.OutputAssembly = "test.exe";
-
- resourceTaskItem = new TaskItem(@"..\RequiredLibraries\MyResource.resx");
- fullPathResourceTaskItem = new TaskItem(@"C:\Projects\Test\MyTest.resx");
- compiler.Resources = new ITaskItem[] {resourceTaskItem, fullPathResourceTaskItem};
-
- compiler.Execute();
- }
-
- [Test]
- public void RelativePathReferenceItemPassedToCompilerWithFullPath()
- {
- string fileName = mockCompiler.ResourceFiles[0].FileName;
- Assert.AreEqual(@"C:\Projects\RequiredLibraries\MyResource.resx", fileName);
- }
-
- [Test]
- public void FullPathReferenceItemUnchangedWhenPassedToCompiler()
- {
- string fileName = mockCompiler.ResourceFiles[1].FileName;
- Assert.AreEqual(fullPathResourceTaskItem.ItemSpec, fileName);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/SyntaxErrorFileNameWithDotCharTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/SyntaxErrorFileNameWithDotCharTestFixture.cs
deleted file mode 100644
index d921239ea4e..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/SyntaxErrorFileNameWithDotCharTestFixture.cs
+++ /dev/null
@@ -1,79 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection;
-using System.Reflection.Emit;
-using IronPython.Runtime;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using Microsoft.Scripting;
-using Microsoft.Scripting.Hosting;
-using Microsoft.Scripting.Runtime;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// If the project has a filename with a dot character in it (e.g. Resources.Designer.py) and this file
- /// has a syntax error then IronPython's ClrModule.CompileModules method will throw a syntax error exception but the
- /// filename will have a '\' replacing the dot character (i.e. Resources\Designer.py).
- ///
- [TestFixture]
- public class SyntaxErrorFileNameWithDotCharTestFixture
- {
- MockPythonCompiler mockCompiler;
- DummyPythonCompilerTask compiler;
- bool success;
-
- [TestFixtureSetUp]
- public void SetUpFixture()
- {
- ScriptEngine engine = IronPython.Hosting.Python.CreateEngine();
- }
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compiler = new DummyPythonCompilerTask(mockCompiler, @"C:\Projects\MyProject");
- compiler.TargetType = "Exe";
- compiler.OutputAssembly = "test.exe";
-
- TaskItem sourceFile = new TaskItem(@"D:\Projects\MyProject\PythonApp.Program.py");
- compiler.Sources = new ITaskItem[] {sourceFile};
-
- SourceUnit source = DefaultContext.DefaultPythonContext.CreateSourceUnit(NullTextContentProvider.Null, @"PythonApp\Program", SourceCodeKind.InteractiveCode);
-
- SourceLocation start = new SourceLocation(0, 1, 1);
- SourceLocation end = new SourceLocation(0, 2, 3);
- SourceSpan span = new SourceSpan(start, end);
- SyntaxErrorException ex = new SyntaxErrorException("Error", source, span, 1000, Severity.FatalError);
- mockCompiler.ThrowExceptionAtCompile = ex;
-
- success = compiler.Execute();
- }
-
- [Test]
- public void SourceFile()
- {
- Assert.AreEqual(@"D:\Projects\MyProject\PythonApp.Program.py", compiler.LoggedErrorFile);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/SyntaxErrorNullFileNameTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/SyntaxErrorNullFileNameTestFixture.cs
deleted file mode 100644
index f3fbb2c8f39..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/SyntaxErrorNullFileNameTestFixture.cs
+++ /dev/null
@@ -1,71 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection;
-using System.Reflection.Emit;
-using IronPython.Runtime;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using Microsoft.Scripting;
-using Microsoft.Scripting.Hosting;
-using Microsoft.Scripting.Runtime;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- [TestFixture]
- public class SyntaxErrorNullFileNameTestFixture
- {
- MockPythonCompiler mockCompiler;
- DummyPythonCompilerTask compiler;
- bool success;
-
- [TestFixtureSetUp]
- public void SetUpFixture()
- {
- ScriptEngine engine = IronPython.Hosting.Python.CreateEngine();
- }
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compiler = new DummyPythonCompilerTask(mockCompiler, @"C:\Projects\MyProject");
- compiler.TargetType = "Exe";
- compiler.OutputAssembly = "test.exe";
-
- TaskItem sourceFile = new TaskItem(@"D:\Projects\MyProject\test.py");
- compiler.Sources = new ITaskItem[] {sourceFile};
-
- SourceUnit source = DefaultContext.DefaultPythonContext.CreateSourceUnit(NullTextContentProvider.Null, @"test", SourceCodeKind.InteractiveCode);
-
- SyntaxErrorException ex = new SyntaxErrorException("Error", null, SourceSpan.None, 1000, Severity.FatalError);
- mockCompiler.ThrowExceptionAtCompile = ex;
-
- success = compiler.Execute();
- }
-
- [Test]
- public void IsExceptionMessageLogged()
- {
- Assert.AreEqual("Error", compiler.LoggedErrorMessage);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/SyntaxErrorTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/SyntaxErrorTestFixture.cs
deleted file mode 100644
index 0d2ef5ee667..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/SyntaxErrorTestFixture.cs
+++ /dev/null
@@ -1,119 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection;
-using System.Reflection.Emit;
-using IronPython.Runtime;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using Microsoft.Scripting;
-using Microsoft.Scripting.Hosting;
-using Microsoft.Scripting.Runtime;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// Tests that a syntax error exception is caught and logged.
- ///
- [TestFixture]
- public class SyntaxErrorTestFixture
- {
- MockPythonCompiler mockCompiler;
- DummyPythonCompilerTask compiler;
- bool success;
-
- [TestFixtureSetUp]
- public void SetUpFixture()
- {
- ScriptEngine engine = IronPython.Hosting.Python.CreateEngine();
- }
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compiler = new DummyPythonCompilerTask(mockCompiler, @"C:\Projects\MyProject");
- compiler.TargetType = "Exe";
- compiler.OutputAssembly = "test.exe";
-
- TaskItem sourceFile = new TaskItem(@"D:\Projects\MyProject\test.py");
- compiler.Sources = new ITaskItem[] {sourceFile};
-
- SourceUnit source = DefaultContext.DefaultPythonContext.CreateSourceUnit(NullTextContentProvider.Null, @"test", SourceCodeKind.InteractiveCode);
-
- SourceLocation start = new SourceLocation(0, 1, 1);
- SourceLocation end = new SourceLocation(0, 2, 3);
- SourceSpan span = new SourceSpan(start, end);
- SyntaxErrorException ex = new SyntaxErrorException("Error", source, span, 1000, Severity.FatalError);
- mockCompiler.ThrowExceptionAtCompile = ex;
-
- success = compiler.Execute();
- }
-
- [Test]
- public void ExecuteFailed()
- {
- Assert.IsFalse(success);
- }
-
- [Test]
- public void IsExceptionMessageLogged()
- {
- Assert.AreEqual("Error", compiler.LoggedErrorMessage);
- }
-
- [Test]
- public void IsErrorCodeLogged()
- {
- Assert.AreEqual("1000", compiler.LoggedErrorCode);
- }
-
- [Test]
- public void SourceFile()
- {
- Assert.AreEqual(@"D:\Projects\MyProject\test.py", compiler.LoggedErrorFile);
- }
-
- [Test]
- public void SourceStartLine()
- {
- Assert.AreEqual(1, compiler.LoggedStartLine);
- }
-
- [Test]
- public void SourceStartColumn()
- {
- Assert.AreEqual(1, compiler.LoggedStartColumn);
- }
-
- [Test]
- public void SourceEndLine()
- {
- Assert.AreEqual(2, compiler.LoggedEndLine);
- }
-
- [Test]
- public void SourceEndColumn()
- {
- Assert.AreEqual(3, compiler.LoggedEndColumn);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/SyntaxErrorUnknownFileNameTestFixture.cs b/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/SyntaxErrorUnknownFileNameTestFixture.cs
deleted file mode 100644
index 0936c472073..00000000000
--- a/src/AddIns/BackendBindings/Python/Python.Build.Tasks/Test/SyntaxErrorUnknownFileNameTestFixture.cs
+++ /dev/null
@@ -1,78 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Reflection;
-using System.Reflection.Emit;
-using IronPython.Runtime;
-using ICSharpCode.Python.Build.Tasks;
-using Microsoft.Build.Framework;
-using Microsoft.Build.Utilities;
-using Microsoft.Scripting;
-using Microsoft.Scripting.Hosting;
-using Microsoft.Scripting.Runtime;
-using NUnit.Framework;
-
-namespace Python.Build.Tasks.Tests
-{
- ///
- /// If the filename returned from the SyntaxErrorException cannot be found in the project then
- /// just use the project's folder concatenated with the filename.
- ///
- [TestFixture]
- public class SyntaxErrorUnknownFileNameTestFixture
- {
- MockPythonCompiler mockCompiler;
- DummyPythonCompilerTask compiler;
- bool success;
-
- [TestFixtureSetUp]
- public void SetUpFixture()
- {
- ScriptEngine engine = IronPython.Hosting.Python.CreateEngine();
- }
-
- [SetUp]
- public void Init()
- {
- mockCompiler = new MockPythonCompiler();
- compiler = new DummyPythonCompilerTask(mockCompiler, @"D:\Projects\MyProject");
- compiler.TargetType = "Exe";
- compiler.OutputAssembly = "test.exe";
-
- TaskItem sourceFile = new TaskItem(@"D:\Projects\MyProject\test.py");
- compiler.Sources = new ITaskItem[] {sourceFile};
-
- SourceUnit source = DefaultContext.DefaultPythonContext.CreateSourceUnit(NullTextContentProvider.Null, @"test\unknown", SourceCodeKind.InteractiveCode);
-
- SourceLocation start = new SourceLocation(0, 1, 1);
- SourceLocation end = new SourceLocation(0, 2, 3);
- SourceSpan span = new SourceSpan(start, end);
- SyntaxErrorException ex = new SyntaxErrorException("Error", source, span, 1000, Severity.FatalError);
- mockCompiler.ThrowExceptionAtCompile = ex;
-
- success = compiler.Execute();
- }
-
- [Test]
- public void SourceFile()
- {
- Assert.AreEqual(@"D:\Projects\MyProject\test.unknown.py", compiler.LoggedErrorFile);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding.sln b/src/AddIns/BackendBindings/Python/PythonBinding.sln
deleted file mode 100644
index 2b9b97c3ca3..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding.sln
+++ /dev/null
@@ -1,206 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-# SharpDevelop 4.3
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding", "PythonBinding\Project\PythonBinding.csproj", "{8D732610-8FC6-43BA-94C9-7126FD7FE361}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding.Tests", "PythonBinding\Test\PythonBinding.Tests.csproj", "{23B517C9-1ECC-4419-A13F-0B7136D085CB}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks", "Python.Build.Tasks\Project\Python.Build.Tasks.csproj", "{D332F2D1-2CF1-43B7-903C-844BD5211A7E}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks.Tests", "Python.Build.Tasks\Test\Python.Build.Tasks.Tests.csproj", "{833904AB-3CD4-4071-9B48-5770E44685AA}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FormsDesigner", "..\..\DisplayBindings\FormsDesigner\Project\FormsDesigner.csproj", "{7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.AvalonEdit", "..\..\..\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj", "{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactory", "..\..\..\Libraries\NRefactory\Project\NRefactory.csproj", "{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop", "..\..\..\Main\Base\Project\ICSharpCode.SharpDevelop.csproj", "{2748AD25-9C63-4E12-877B-4DCE96FBED54}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "..\..\..\Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.Presentation", "..\..\..\Main\ICSharpCode.Core.Presentation\ICSharpCode.Core.Presentation.csproj", "{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.WinForms", "..\..\..\Main\ICSharpCode.Core.WinForms\ICSharpCode.Core.WinForms.csproj", "{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom", "..\..\..\Main\ICSharpCode.SharpDevelop.Dom\Project\ICSharpCode.SharpDevelop.Dom.csproj", "{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Widgets", "..\..\..\Main\ICSharpCode.SharpDevelop.Widgets\Project\ICSharpCode.SharpDevelop.Widgets.csproj", "{8035765F-D51F-4A0C-A746-2FD100E19419}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvalonEdit.AddIn", "..\..\DisplayBindings\AvalonEdit.AddIn\AvalonEdit.AddIn.csproj", "{0162E499-42D0-409B-AA25-EED21F75336B}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting", "..\..\Analysis\UnitTesting\UnitTesting.csproj", "{1F261725-6318-4434-A1B1-6C70CE4CD324}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting.Tests", "..\..\Analysis\UnitTesting\Test\UnitTesting.Tests.csproj", "{44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Scripting", "..\Scripting\Project\ICSharpCode.Scripting.csproj", "{7048AE18-EB93-4A84-82D0-DD60EB58ADBD}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Scripting.Tests", "..\Scripting\Test\ICSharpCode.Scripting.Tests.csproj", "{85C09AD8-183B-403A-869A-7226646218A9}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PyWalker", "PyWalker\PyWalker.csproj", "{55329704-6046-48EC-8A20-5C80B3092A63}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Release|Any CPU = Release|Any CPU
- Debug|Any CPU = Debug|Any CPU
- Release|Any CPU = Release|Any CPU
- Debug|x86 = Debug|x86
- Release|x86 = Release|x86
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {8D732610-8FC6-43BA-94C9-7126FD7FE361}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {8D732610-8FC6-43BA-94C9-7126FD7FE361}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {8D732610-8FC6-43BA-94C9-7126FD7FE361}.Release|Any CPU.Build.0 = Release|Any CPU
- {8D732610-8FC6-43BA-94C9-7126FD7FE361}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {23B517C9-1ECC-4419-A13F-0B7136D085CB}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {23B517C9-1ECC-4419-A13F-0B7136D085CB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {23B517C9-1ECC-4419-A13F-0B7136D085CB}.Release|Any CPU.Build.0 = Release|Any CPU
- {23B517C9-1ECC-4419-A13F-0B7136D085CB}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {D332F2D1-2CF1-43B7-903C-844BD5211A7E}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {D332F2D1-2CF1-43B7-903C-844BD5211A7E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {D332F2D1-2CF1-43B7-903C-844BD5211A7E}.Release|Any CPU.Build.0 = Release|Any CPU
- {D332F2D1-2CF1-43B7-903C-844BD5211A7E}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {833904AB-3CD4-4071-9B48-5770E44685AA}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {833904AB-3CD4-4071-9B48-5770E44685AA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {833904AB-3CD4-4071-9B48-5770E44685AA}.Release|Any CPU.Build.0 = Release|Any CPU
- {833904AB-3CD4-4071-9B48-5770E44685AA}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}.Release|Any CPU.Build.0 = Release|Any CPU
- {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|Any CPU.Build.0 = Release|Any CPU
- {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}.Release|Any CPU.Build.0 = Release|Any CPU
- {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Release|Any CPU.Build.0 = Release|Any CPU
- {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.Build.0 = Release|Any CPU
- {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Release|Any CPU.Build.0 = Release|Any CPU
- {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.Build.0 = Release|Any CPU
- {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Release|Any CPU.Build.0 = Release|Any CPU
- {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {8035765F-D51F-4A0C-A746-2FD100E19419}.Release|Any CPU.Build.0 = Release|Any CPU
- {8035765F-D51F-4A0C-A746-2FD100E19419}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {0162E499-42D0-409B-AA25-EED21F75336B}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {0162E499-42D0-409B-AA25-EED21F75336B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {0162E499-42D0-409B-AA25-EED21F75336B}.Release|Any CPU.Build.0 = Release|Any CPU
- {0162E499-42D0-409B-AA25-EED21F75336B}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {1F261725-6318-4434-A1B1-6C70CE4CD324}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {1F261725-6318-4434-A1B1-6C70CE4CD324}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {1F261725-6318-4434-A1B1-6C70CE4CD324}.Release|Any CPU.Build.0 = Release|Any CPU
- {1F261725-6318-4434-A1B1-6C70CE4CD324}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}.Release|Any CPU.Build.0 = Release|Any CPU
- {44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Debug|Any CPU.Build.0 = Debug|x86
- {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Debug|Any CPU.ActiveCfg = Debug|x86
- {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Release|Any CPU.Build.0 = Release|x86
- {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Release|Any CPU.ActiveCfg = Release|x86
- {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Debug|x86.Build.0 = Debug|x86
- {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Debug|x86.ActiveCfg = Debug|x86
- {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Release|x86.Build.0 = Release|x86
- {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}.Release|x86.ActiveCfg = Release|x86
- {85C09AD8-183B-403A-869A-7226646218A9}.Debug|Any CPU.Build.0 = Debug|x86
- {85C09AD8-183B-403A-869A-7226646218A9}.Debug|Any CPU.ActiveCfg = Debug|x86
- {85C09AD8-183B-403A-869A-7226646218A9}.Debug|x86.Build.0 = Debug|x86
- {85C09AD8-183B-403A-869A-7226646218A9}.Debug|x86.ActiveCfg = Debug|x86
- {85C09AD8-183B-403A-869A-7226646218A9}.Release|Any CPU.Build.0 = Release|x86
- {85C09AD8-183B-403A-869A-7226646218A9}.Release|Any CPU.ActiveCfg = Release|x86
- {85C09AD8-183B-403A-869A-7226646218A9}.Release|x86.Build.0 = Release|x86
- {85C09AD8-183B-403A-869A-7226646218A9}.Release|x86.ActiveCfg = Release|x86
- {55329704-6046-48EC-8A20-5C80B3092A63}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {55329704-6046-48EC-8A20-5C80B3092A63}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {55329704-6046-48EC-8A20-5C80B3092A63}.Debug|x86.Build.0 = Debug|Any CPU
- {55329704-6046-48EC-8A20-5C80B3092A63}.Debug|x86.ActiveCfg = Debug|Any CPU
- {55329704-6046-48EC-8A20-5C80B3092A63}.Release|Any CPU.Build.0 = Release|Any CPU
- {55329704-6046-48EC-8A20-5C80B3092A63}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {55329704-6046-48EC-8A20-5C80B3092A63}.Release|x86.Build.0 = Release|Any CPU
- {55329704-6046-48EC-8A20-5C80B3092A63}.Release|x86.ActiveCfg = Release|Any CPU
- {44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}.Debug|x86.Build.0 = Debug|Any CPU
- {44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}.Debug|x86.ActiveCfg = Debug|Any CPU
- {44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}.Release|x86.Build.0 = Release|Any CPU
- {44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}.Release|x86.ActiveCfg = Release|Any CPU
- {1F261725-6318-4434-A1B1-6C70CE4CD324}.Debug|x86.Build.0 = Debug|Any CPU
- {1F261725-6318-4434-A1B1-6C70CE4CD324}.Debug|x86.ActiveCfg = Debug|Any CPU
- {1F261725-6318-4434-A1B1-6C70CE4CD324}.Release|x86.Build.0 = Release|Any CPU
- {1F261725-6318-4434-A1B1-6C70CE4CD324}.Release|x86.ActiveCfg = Release|Any CPU
- {0162E499-42D0-409B-AA25-EED21F75336B}.Debug|x86.Build.0 = Debug|Any CPU
- {0162E499-42D0-409B-AA25-EED21F75336B}.Debug|x86.ActiveCfg = Debug|Any CPU
- {0162E499-42D0-409B-AA25-EED21F75336B}.Release|x86.Build.0 = Release|Any CPU
- {0162E499-42D0-409B-AA25-EED21F75336B}.Release|x86.ActiveCfg = Release|Any CPU
- {8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|x86.Build.0 = Debug|Any CPU
- {8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|x86.ActiveCfg = Debug|Any CPU
- {8035765F-D51F-4A0C-A746-2FD100E19419}.Release|x86.Build.0 = Release|Any CPU
- {8035765F-D51F-4A0C-A746-2FD100E19419}.Release|x86.ActiveCfg = Release|Any CPU
- {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Debug|x86.Build.0 = Debug|Any CPU
- {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Debug|x86.ActiveCfg = Debug|Any CPU
- {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Release|x86.Build.0 = Release|Any CPU
- {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Release|x86.ActiveCfg = Release|Any CPU
- {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|x86.Build.0 = Debug|Any CPU
- {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Debug|x86.ActiveCfg = Debug|Any CPU
- {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|x86.Build.0 = Release|Any CPU
- {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|x86.ActiveCfg = Release|Any CPU
- {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Debug|x86.Build.0 = Debug|Any CPU
- {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Debug|x86.ActiveCfg = Debug|Any CPU
- {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Release|x86.Build.0 = Release|Any CPU
- {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}.Release|x86.ActiveCfg = Release|Any CPU
- {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|x86.Build.0 = Debug|Any CPU
- {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Debug|x86.ActiveCfg = Debug|Any CPU
- {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|x86.Build.0 = Release|Any CPU
- {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}.Release|x86.ActiveCfg = Release|Any CPU
- {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Debug|x86.Build.0 = Debug|Any CPU
- {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Debug|x86.ActiveCfg = Debug|Any CPU
- {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Release|x86.Build.0 = Release|Any CPU
- {2748AD25-9C63-4E12-877B-4DCE96FBED54}.Release|x86.ActiveCfg = Release|Any CPU
- {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}.Debug|x86.Build.0 = Debug|Any CPU
- {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}.Debug|x86.ActiveCfg = Debug|Any CPU
- {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}.Release|x86.Build.0 = Release|Any CPU
- {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}.Release|x86.ActiveCfg = Release|Any CPU
- {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|x86.Build.0 = Debug|Any CPU
- {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|x86.ActiveCfg = Debug|Any CPU
- {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|x86.Build.0 = Release|Any CPU
- {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|x86.ActiveCfg = Release|Any CPU
- {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}.Debug|x86.Build.0 = Debug|Any CPU
- {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}.Debug|x86.ActiveCfg = Debug|Any CPU
- {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}.Release|x86.Build.0 = Release|Any CPU
- {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}.Release|x86.ActiveCfg = Release|Any CPU
- {833904AB-3CD4-4071-9B48-5770E44685AA}.Debug|x86.Build.0 = Debug|Any CPU
- {833904AB-3CD4-4071-9B48-5770E44685AA}.Debug|x86.ActiveCfg = Debug|Any CPU
- {833904AB-3CD4-4071-9B48-5770E44685AA}.Release|x86.Build.0 = Release|Any CPU
- {833904AB-3CD4-4071-9B48-5770E44685AA}.Release|x86.ActiveCfg = Release|Any CPU
- {D332F2D1-2CF1-43B7-903C-844BD5211A7E}.Debug|x86.Build.0 = Debug|Any CPU
- {D332F2D1-2CF1-43B7-903C-844BD5211A7E}.Debug|x86.ActiveCfg = Debug|Any CPU
- {D332F2D1-2CF1-43B7-903C-844BD5211A7E}.Release|x86.Build.0 = Release|Any CPU
- {D332F2D1-2CF1-43B7-903C-844BD5211A7E}.Release|x86.ActiveCfg = Release|Any CPU
- {23B517C9-1ECC-4419-A13F-0B7136D085CB}.Debug|x86.Build.0 = Debug|Any CPU
- {23B517C9-1ECC-4419-A13F-0B7136D085CB}.Debug|x86.ActiveCfg = Debug|Any CPU
- {23B517C9-1ECC-4419-A13F-0B7136D085CB}.Release|x86.Build.0 = Release|Any CPU
- {23B517C9-1ECC-4419-A13F-0B7136D085CB}.Release|x86.ActiveCfg = Release|Any CPU
- {8D732610-8FC6-43BA-94C9-7126FD7FE361}.Debug|x86.Build.0 = Debug|Any CPU
- {8D732610-8FC6-43BA-94C9-7126FD7FE361}.Debug|x86.ActiveCfg = Debug|Any CPU
- {8D732610-8FC6-43BA-94C9-7126FD7FE361}.Release|x86.Build.0 = Release|Any CPU
- {8D732610-8FC6-43BA-94C9-7126FD7FE361}.Release|x86.ActiveCfg = Release|Any CPU
- EndGlobalSection
-EndGlobal
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Configuration/AssemblyInfo.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Configuration/AssemblyInfo.cs
deleted file mode 100644
index e765f062dd0..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Configuration/AssemblyInfo.cs
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System.Reflection;
-
-// Information about this assembly is defined by the following
-// attributes.
-//
-// change them to the information which is associated with the assembly
-// you compile.
-
-[assembly: AssemblyTitle("PythonBinding")]
-[assembly: AssemblyDescription("IronPython addin for SharpDevelop.")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Lib/__future__.py b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Lib/__future__.py
deleted file mode 100644
index 4b9df43d5e3..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Lib/__future__.py
+++ /dev/null
@@ -1,25 +0,0 @@
-#####################################################################################
-#
-# Copyright (c) Microsoft Corporation. All rights reserved.
-#
-# This source code is subject to terms and conditions of the Microsoft Public License. A
-# copy of the license can be found in the License.html file at the root of this distribution. If
-# you cannot locate the Microsoft Public License, please send an email to
-# ironpy@microsoft.com. By using this source code in any fashion, you are agreeing to be bound
-# by the terms of the Microsoft Public License.
-#
-# You must not remove this notice, or any other, from this software.
-#
-#
-#####################################################################################
-
-all_feature_names = ['nested_scopes', 'generators', 'division',
- 'absolute_import', 'with_statement', 'print_function',
- 'unicode_literals']
-
-division=1
-with_statement=1
-generators=1
-absolute_import=1
-print_function=1
-unicode_literals=1
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Lib/runpy.py b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Lib/runpy.py
deleted file mode 100644
index 451562244fa..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Lib/runpy.py
+++ /dev/null
@@ -1,31 +0,0 @@
-#####################################################################################
-#
-# Copyright (c) Microsoft Corporation. All rights reserved.
-#
-# This source code is subject to terms and conditions of the Microsoft Public License. A
-# copy of the license can be found in the License.html file at the root of this distribution. If
-# you cannot locate the Microsoft Public License, please send an email to
-# ironpy@microsoft.com. By using this source code in any fashion, you are agreeing to be bound
-# by the terms of the Microsoft Public License.
-#
-# You must not remove this notice, or any other, from this software.
-#
-#
-#####################################################################################
-
-"""
-Fake runpy.py which emulates what CPython does to properly support the '-m' flag.
-If you have access to the CPython standard library, you most likely do not need this.
-"""
-
-import sys, nt
-
-def run_module(modToRun, init_globals=None, run_name = '__main__', alter_sys = True):
- if alter_sys:
- for o in sys.path:
- libpath = o + '\\' + modToRun + '.py'
- if nt.access(libpath, nt.F_OK):
- sys.argv[0] = libpath
- break
-
- __import__(modToRun)
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Lib/site.py b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Lib/site.py
deleted file mode 100644
index 07581427f69..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Lib/site.py
+++ /dev/null
@@ -1,14 +0,0 @@
-#####################################################################################
-#
-# Copyright (c) Microsoft Corporation. All rights reserved.
-#
-# This source code is subject to terms and conditions of the Microsoft Public License. A
-# copy of the license can be found in the License.html file at the root of this distribution. If
-# you cannot locate the Microsoft Public License, please send an email to
-# ironpy@microsoft.com. By using this source code in any fashion, you are agreeing to be bound
-# by the terms of the Microsoft Public License.
-#
-# You must not remove this notice, or any other, from this software.
-#
-#
-#####################################################################################
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.addin b/src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.addin
deleted file mode 100644
index 529aea81d83..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.addin
+++ /dev/null
@@ -1,227 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.csproj b/src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.csproj
deleted file mode 100644
index dd2fef1d06a..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.csproj
+++ /dev/null
@@ -1,319 +0,0 @@
-
-
-
- {8D732610-8FC6-43BA-94C9-7126FD7FE361}
- Debug
- AnyCPU
- Library
- ICSharpCode.PythonBinding
- PythonBinding
- False
- False
- 4
- false
- v4.0
-
-
-
-
- ..\..\..\..\..\..\AddIns\BackendBindings\PythonBinding\
- true
- Full
- True
- DEBUG;TRACE
- False
-
-
- ..\..\..\..\..\..\AddIns\BackendBindings\PythonBinding\
- false
- None
- False
- TRACE
- False
-
-
- False
- Auto
- 4194304
- x86
- 4096
-
-
-
-
- ..\..\RequiredLibraries\Chiron.exe
-
-
- ..\..\RequiredLibraries\ipy.exe
-
-
- ..\..\RequiredLibraries\IronPython.dll
- True
-
-
- ..\..\RequiredLibraries\IronPython.Modules.dll
- True
-
-
- ..\..\RequiredLibraries\Microsoft.Dynamic.dll
- True
-
-
- ..\..\RequiredLibraries\Microsoft.Scripting.dll
- True
-
-
- ..\..\RequiredLibraries\Microsoft.Scripting.Metadata.dll
- True
-
-
- 3.0
-
-
- 3.0
-
-
-
- 3.5
-
-
-
-
-
- 4.0
-
-
-
- 3.0
-
-
-
-
- Configuration\GlobalAssemblyInfo.cs
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PythonOptionsPanel.xaml
- Code
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Chiron.exe.Config
- Always
-
-
- DLLs\IronPython.Wpf.dll
- Always
-
-
- License.Rtf
- Always
-
-
- Always
-
-
- Always
-
-
- Always
-
-
- Always
-
-
-
-
- Always
-
-
- Always
-
-
- Always
-
-
- Always
-
-
- Always
-
-
- Always
-
-
- Always
-
-
-
- Always
-
-
- Always
-
-
- Always
-
-
- Always
-
-
- Always
-
-
-
-
-
-
-
-
-
- {6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}
- ICSharpCode.AvalonEdit
- False
-
-
- {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}
- NRefactory
- False
-
-
- {2748AD25-9C63-4E12-877B-4DCE96FBED54}
- ICSharpCode.SharpDevelop
- False
-
-
- {2748AD25-9C63-4E12-877B-4DCE96FBED54}
- ICSharpCode.SharpDevelop
-
-
- {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
- ICSharpCode.Core
- False
-
-
- {7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}
- ICSharpCode.Core.Presentation
-
-
- {924EE450-603D-49C1-A8E5-4AFAA31CE6F3}
- ICSharpCode.SharpDevelop.Dom
- False
-
-
- {8035765F-D51F-4A0C-A746-2FD100E19419}
- ICSharpCode.SharpDevelop.Widgets
-
-
- {1F261725-6318-4434-A1B1-6C70CE4CD324}
- UnitTesting
- False
-
-
- {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}
- FormsDesigner
- False
-
-
- {7048AE18-EB93-4A84-82D0-DD60EB58ADBD}
- ICSharpCode.Scripting
- False
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/ApplicationSettingsPanel.xfrm b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/ApplicationSettingsPanel.xfrm
deleted file mode 100644
index 25b9056d0e6..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/ApplicationSettingsPanel.xfrm
+++ /dev/null
@@ -1,138 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/CompilingOptionsPanel.xfrm b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/CompilingOptionsPanel.xfrm
deleted file mode 100644
index c972ec65db1..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/CompilingOptionsPanel.xfrm
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/Python.xshd b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/Python.xshd
deleted file mode 100644
index 2f7076e5c41..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/Python.xshd
+++ /dev/null
@@ -1,135 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- """
- """
-
-
-
- '''
- '''
-
-
-
- \#
-
-
-
- "
- "
-
-
-
-
-
-
-
- '
- '
-
-
-
-
-
-
-
- assert
- del
- exec
- global
- lambda
- print
-
-
-
- class
-
-
-
- except
- finally
- raise
- try
-
-
-
- def
-
-
-
- import
- from
-
-
-
- for
- in
- while
-
-
-
- break
- continue
- yield
- return
-
-
-
- and
- as
- is
- not
- or
-
-
-
- pass
-
-
-
- elif
- else
- if
-
-
-
- with
-
-
-
- None
-
-
- \b[\d\w_]+(?=(\s*\())
- \b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?
-
-
- [?,.;()\[\]{}+\-/%*<>^+~!|&]+
-
-
-
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/AddInOptions.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/AddInOptions.cs
deleted file mode 100644
index e8f7cc724c8..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/AddInOptions.cs
+++ /dev/null
@@ -1,100 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using System.IO;
-using ICSharpCode.Core;
-
-namespace ICSharpCode.PythonBinding
-{
- ///
- /// Holds the options for the PythonBinding AddIn
- ///
- public class PythonAddInOptions
- {
- ///
- /// The name of the options as read from the PropertyService.
- ///
- public static readonly string AddInOptionsName = "PythonBinding.Options";
-
- ///
- /// The default python console filename.
- ///
- public static readonly string DefaultPythonFileName = "ipy.exe";
-
- #region Property names
- public static readonly string PythonFileNameProperty = "PythonFileName";
- public static readonly string PythonLibraryPathProperty = "PythonLibraryPath";
- #endregion
-
- Properties properties;
-
- public PythonAddInOptions()
- : this(PropertyService.Get(AddInOptionsName, new Properties()))
- {
- }
-
- ///
- /// Creates the addin options class which will use
- /// the options from the properties class specified.
- ///
- public PythonAddInOptions(Properties properties)
- {
- this.properties = properties;
- }
-
- public string PythonLibraryPath {
- get { return properties.Get(PythonLibraryPathProperty, String.Empty); }
- set { properties.Set(PythonLibraryPathProperty, value); }
- }
-
- public bool HasPythonLibraryPath {
- get { return !String.IsNullOrEmpty(PythonLibraryPath); }
- }
-
- ///
- /// Gets or sets the python console filename.
- ///
- public string PythonFileName {
- get { return properties.Get(PythonFileNameProperty, GetDefaultPythonFileName()); }
- set {
- if (String.IsNullOrEmpty(value)) {
- properties.Set(PythonFileNameProperty, GetDefaultPythonFileName());
- } else {
- properties.Set(PythonFileNameProperty, value);
- }
- }
- }
-
- ///
- /// Returns the full path to ipyw.exe which is installed in the
- /// Python addin folder.
- ///
- string GetDefaultPythonFileName()
- {
- string path = GetPythonBindingAddInPath();
- return Path.Combine(path, DefaultPythonFileName);
- }
-
- string GetPythonBindingAddInPath()
- {
- return StringParser.Parse("${addinpath:ICSharpCode.PythonBinding}");
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ApplicationSettingsPanel.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ApplicationSettingsPanel.cs
deleted file mode 100644
index 11aabd8e216..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ApplicationSettingsPanel.cs
+++ /dev/null
@@ -1,154 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.IO;
-using System.Windows.Forms;
-using ICSharpCode.SharpDevelop.Gui.OptionPanels;
-using ICSharpCode.SharpDevelop.Project;
-
-namespace ICSharpCode.PythonBinding
-{
- ///
- /// Python project's application settings panel.
- ///
- public class ApplicationSettingsPanel : AbstractXmlFormsProjectOptionPanel
- {
- const string AssemblyTextBoxName = "assemblyNameTextBox";
- const string RootNamespaceTextBoxName = "rootNamespaceTextBox";
- const string OutputTypeComboBoxName = "outputTypeComboBox";
- const string MainFileComboBoxName = "mainFileComboBox";
-
- public override void LoadPanelContents()
- {
- SetupFromManifestResource("ICSharpCode.PythonBinding.Resources.ApplicationSettingsPanel.xfrm");
- InitializeHelper();
-
- ConfigurationGuiBinding b = BindString(AssemblyTextBoxName, "AssemblyName", TextBoxEditMode.EditEvaluatedProperty);
- CreateLocationButton(b, AssemblyTextBoxName);
- AssemblyNameTextBox.TextChanged += AssemblyNameTextBoxTextChanged;
-
- b = BindString(RootNamespaceTextBoxName, "RootNamespace", TextBoxEditMode.EditEvaluatedProperty);
- CreateLocationButton(b, RootNamespaceTextBoxName);
-
- b = BindEnum(OutputTypeComboBoxName, "OutputType");
- CreateLocationButton(b, OutputTypeComboBoxName);
- OutputTypeComboBox.SelectedIndexChanged += OutputTypeComboBoxSelectedIndexChanged;
-
- b = BindString(MainFileComboBoxName, "MainFile", TextBoxEditMode.EditEvaluatedProperty);
- CreateLocationButton(b, MainFileComboBoxName);
- ConnectBrowseButtonControl("mainFileBrowseButton", "mainFileComboBox",
- "${res:SharpDevelop.FileFilter.AllFiles}|*.*",
- TextBoxEditMode.EditEvaluatedProperty);
-
- Get("projectFolder").Text = project.Directory;
- Get("projectFile").Text = Path.GetFileName(project.FileName);
- Get("projectFile").ReadOnly = true;
-
- RefreshOutputNameTextBox();
- AddConfigurationSelector(this);
- }
-
- ///
- /// Calls SetupFromXmlStream after creating a stream from the current
- /// assembly using the specified manifest resource name.
- ///
- /// The manifest resource name used
- /// to create the stream.
- protected virtual void SetupFromManifestResource(string resource)
- {
- SetupFromXmlStream(typeof(ApplicationSettingsPanel).Assembly.GetManifestResourceStream(resource));
- }
-
- ///
- /// Binds the string property to a text box control.
- ///
- protected virtual ConfigurationGuiBinding BindString(string control, string property, TextBoxEditMode textBoxEditMode)
- {
- return helper.BindString(control, property, textBoxEditMode);
- }
-
- ///
- /// Binds an enum property to a control.
- ///
- protected virtual ConfigurationGuiBinding BindEnum(string control, string property) where T : struct
- {
- return helper.BindEnum(control, property);
- }
-
- ///
- /// Associates a location button with a control.
- ///
- protected virtual ChooseStorageLocationButton CreateLocationButton(ConfigurationGuiBinding binding, string controlName)
- {
- return binding.CreateLocationButton(controlName);
- }
-
- ///
- /// Adds a configuration selector to the specified control.
- ///
- protected virtual void AddConfigurationSelector(Control control)
- {
- helper.AddConfigurationSelector(control);
- }
-
- ///
- /// Connects the browse button control to the target control.
- ///
- protected virtual void ConnectBrowseButtonControl(string browseButton, string target, string fileFilter, TextBoxEditMode textBoxEditMode)
- {
- ConnectBrowseButton(browseButton, target, fileFilter, textBoxEditMode);
- }
-
- ///
- /// Refreshes the output name text box after the assembly name
- /// has changed.
- ///
- protected void AssemblyNameTextBoxTextChanged(object source, EventArgs e)
- {
- RefreshOutputNameTextBox();
- }
-
- ///
- /// Refreshes the output name text box after the output type has changed.
- ///
- protected void OutputTypeComboBoxSelectedIndexChanged(object source, EventArgs e)
- {
- RefreshOutputNameTextBox();
- }
-
- ///
- /// Updates the output name text box based on the assembly name and
- /// output type.
- ///
- void RefreshOutputNameTextBox()
- {
- string assemblyName = AssemblyNameTextBox.Text;
- string extension = CompilableProject.GetExtension((OutputType)OutputTypeComboBox.SelectedIndex);
- Get("outputName").Text = String.Concat(assemblyName, extension);
- }
-
- TextBox AssemblyNameTextBox {
- get { return Get("assemblyName"); }
- }
-
- ComboBox OutputTypeComboBox {
- get { return Get("outputType"); }
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/CompilingOptionsPanel.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/CompilingOptionsPanel.cs
deleted file mode 100644
index c187b0c694a..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/CompilingOptionsPanel.cs
+++ /dev/null
@@ -1,108 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Windows.Forms;
-using ICSharpCode.SharpDevelop.Gui.OptionPanels;
-using ICSharpCode.SharpDevelop.Project;
-
-namespace ICSharpCode.PythonBinding
-{
- ///
- /// Python project's compiling options panel.
- ///
- public class CompilingOptionsPanel : AbstractBuildOptions
- {
- public override void LoadPanelContents()
- {
- SetupFromManifestResource("ICSharpCode.PythonBinding.Resources.CompilingOptionsPanel.xfrm");
- InitializeHelper();
-
- ConfigurationGuiBinding b = BindString("outputPathTextBox", "OutputPath", TextBoxEditMode.EditRawProperty);
- CreateLocationButton(b, "outputPathTextBox");
- ConnectBrowseFolderButtonControl("outputPathBrowseButton", "outputPathTextBox", "${res:Dialog.Options.PrjOptions.Configuration.FolderBrowserDescription}", TextBoxEditMode.EditRawProperty);
-
- b = BindBoolean("debugInfoCheckBox", "DebugInfo", false);
- CreateLocationButton(b, "debugInfoCheckBox");
-
- b = CreatePlatformTargetComboBox();
- CreateLocationButton(b, "targetCpuComboBox");
-
- AddConfigurationSelector(this);
- }
-
- ///
- /// Calls SetupFromXmlStream after creating a stream from the current
- /// assembly using the specified manifest resource name.
- ///
- /// The manifest resource name used
- /// to create the stream.
- protected virtual void SetupFromManifestResource(string resource)
- {
- SetupFromXmlStream(typeof(CompilingOptionsPanel).Assembly.GetManifestResourceStream(resource));
- }
-
- ///
- /// Binds the string property to a text box control.
- ///
- protected virtual ConfigurationGuiBinding BindString(string control, string property, TextBoxEditMode textBoxEditMode)
- {
- return helper.BindString(control, property, textBoxEditMode);
- }
-
- ///
- /// Binds the boolean property to a check box control.
- ///
- protected virtual ConfigurationGuiBinding BindBoolean(string control, string property, bool defaultValue)
- {
- return helper.BindBoolean(control, property, defaultValue);
- }
-
- ///
- /// Associates a location button with a control.
- ///
- protected virtual ChooseStorageLocationButton CreateLocationButton(ConfigurationGuiBinding binding, string controlName)
- {
- return binding.CreateLocationButton(controlName);
- }
-
- ///
- /// Connects the browse folder button control to the target control.
- ///
- protected virtual void ConnectBrowseFolderButtonControl(string browseButton, string target, string description, TextBoxEditMode textBoxEditMode)
- {
- ConnectBrowseFolder(browseButton, target, description, textBoxEditMode);
- }
-
- ///
- /// Adds a configuration selector to the specified control.
- ///
- protected virtual void AddConfigurationSelector(Control control)
- {
- helper.AddConfigurationSelector(control);
- }
-
- ///
- /// Creates the platform target combo box.
- ///
- protected virtual ConfigurationGuiBinding CreatePlatformTargetComboBox()
- {
- return base.CreatePlatformTarget();
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConstructorInfo.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConstructorInfo.cs
deleted file mode 100644
index a65c316461f..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConstructorInfo.cs
+++ /dev/null
@@ -1,68 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using ICSharpCode.NRefactory.Ast;
-
-namespace ICSharpCode.PythonBinding
-{
- public class PythonConstructorInfo
- {
- ConstructorDeclaration constructor;
- List fields = new List();
-
- PythonConstructorInfo(ConstructorDeclaration constructor, List fields)
- {
- this.constructor = constructor;
- this.fields = fields;
- }
-
- ///
- /// Gets the constructor information from a type declaration. Returns null if there is no
- /// constructor defined or if there are no fields defined.
- ///
- public static PythonConstructorInfo GetConstructorInfo(TypeDeclaration type)
- {
- List fields = new List();
- ConstructorDeclaration constructor = null;
- foreach (INode node in type.Children) {
- ConstructorDeclaration currentConstructor = node as ConstructorDeclaration;
- FieldDeclaration field = node as FieldDeclaration;
- if (currentConstructor != null) {
- constructor = currentConstructor;
- } else if (field != null) {
- fields.Add(field);
- }
- }
-
- if ((fields.Count > 0) || (constructor != null)) {
- return new PythonConstructorInfo(constructor, fields);
- }
- return null;
- }
-
- public ConstructorDeclaration Constructor {
- get { return constructor; }
- }
-
- public List Fields {
- get { return fields; }
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConvertProjectToPythonProjectCommand.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConvertProjectToPythonProjectCommand.cs
deleted file mode 100644
index 18426bb05e6..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConvertProjectToPythonProjectCommand.cs
+++ /dev/null
@@ -1,170 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.IO;
-using System.Text;
-
-using ICSharpCode.Core;
-using ICSharpCode.SharpDevelop;
-using ICSharpCode.SharpDevelop.Dom;
-using ICSharpCode.SharpDevelop.Project;
-using ICSharpCode.SharpDevelop.Project.Converter;
-
-namespace ICSharpCode.PythonBinding
-{
- ///
- /// Converts a C# or VB.NET project to Python.
- ///
- public class ConvertProjectToPythonProjectCommand : LanguageConverter
- {
- public override string TargetLanguageName {
- get { return PythonProjectBinding.LanguageName; }
- }
-
- ///
- /// Creates an PythonProject.
- ///
- protected override IProject CreateProject(string targetProjectDirectory, IProject sourceProject)
- {
- // Add IronPython reference.
- PythonProject targetProject = (PythonProject)base.CreateProject(targetProjectDirectory, sourceProject);
- IProjectItemListProvider targetProjectItems = targetProject as IProjectItemListProvider;
- targetProjectItems.AddProjectItem(CreateIronPythonReference(targetProject));
- return targetProject;
- }
-
- ///
- /// Converts C# and VB.NET files to Python and saves the files.
- ///
- protected override void ConvertFile(FileProjectItem sourceItem, FileProjectItem targetItem)
- {
- NRefactoryToPythonConverter converter = NRefactoryToPythonConverter.Create(sourceItem.Include);
- if (converter != null) {
- targetItem.Include = ChangeFileExtensionToPythonFileExtension(sourceItem.Include);
-
- string code = GetParseableFileContent(sourceItem.FileName);
- string pythonCode = converter.Convert(code);
-
- PythonProject pythonTargetProject = (PythonProject)targetItem.Project;
- if ((converter.EntryPointMethods.Count > 0) && !pythonTargetProject.HasMainFile) {
- pythonTargetProject.AddMainFile(targetItem.Include);
-
- // Add code to call main method at the end of the file.
- pythonCode += "\r\n\r\n" + converter.GenerateMainMethodCall(converter.EntryPointMethods[0]);
- }
-
- SaveFile(targetItem.FileName, pythonCode, GetDefaultFileEncoding());
- } else {
- LanguageConverterConvertFile(sourceItem, targetItem);
- }
- }
-
- ///
- /// Adds the MainFile property since adding it in the CreateProject method would mean
- /// it gets removed via the base class CopyProperties method.
- ///
- protected override void CopyProperties(IProject sourceProject, IProject targetProject)
- {
- base.CopyProperties(sourceProject, targetProject);
- AddMainFile(sourceProject, (PythonProject)targetProject);
- }
-
- ///
- /// Calls the LanguageConverter class method ConvertFile which copies the source file to the target
- /// file without any modifications.
- ///
- protected virtual void LanguageConverterConvertFile(FileProjectItem sourceItem, FileProjectItem targetItem)
- {
- base.ConvertFile(sourceItem, targetItem);
- }
-
- ///
- /// Writes the specified file to disk.
- ///
- protected virtual void SaveFile(string fileName, string content, Encoding encoding)
- {
- File.WriteAllText(fileName, content, encoding);
- }
-
- protected virtual Encoding GetDefaultFileEncoding()
- {
- return FileService.DefaultFileEncoding.GetEncoding();
- }
-
- ///
- /// Gets the content of the file from the parser service.
- ///
- protected virtual string GetParseableFileContent(string fileName)
- {
- return ParserService.GetParseableFileContent(fileName).Text;
- }
-
- ///
- /// Gets the project content for the specified project.
- ///
- protected virtual IProjectContent GetProjectContent(IProject project)
- {
- return ParserService.GetProjectContent(project);
- }
-
- ReferenceProjectItem CreateIronPythonReference(IProject project)
- {
- ReferenceProjectItem reference = new ReferenceProjectItem(project, "IronPython");
- reference.SetMetadata("HintPath", @"$(PythonBinPath)\IronPython.dll");
- return reference;
- }
-
- ///
- /// Adds a MainFile if the source project has a StartupObject.
- ///
- void AddMainFile(IProject sourceProject, PythonProject targetProject)
- {
- string startupObject = GetStartupObject(sourceProject);
- if (startupObject != null) {
- IClass c = FindClass(sourceProject, startupObject);
- if (c != null) {
- string fileName = FileUtility.GetRelativePath(sourceProject.Directory, c.CompilationUnit.FileName);
- targetProject.AddMainFile(ChangeFileExtensionToPythonFileExtension(fileName));
- }
- }
- }
-
- string GetStartupObject(IProject project)
- {
- MSBuildBasedProject msbuildProject = project as MSBuildBasedProject;
- if (msbuildProject != null) {
- return msbuildProject.GetProperty(null, null, "StartupObject");
- }
- return null;
- }
-
- IClass FindClass(IProject project, string name)
- {
- return GetProjectContent(project).GetClass(name, 0);
- }
-
- ///
- /// Changes the extension to ".py"
- ///
- static string ChangeFileExtensionToPythonFileExtension(string fileName)
- {
- return Path.ChangeExtension(fileName, ".py");
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConvertToPythonMenuCommand.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConvertToPythonMenuCommand.cs
deleted file mode 100644
index c2696255076..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConvertToPythonMenuCommand.cs
+++ /dev/null
@@ -1,66 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using ICSharpCode.Core;
-using ICSharpCode.Scripting;
-using ICSharpCode.SharpDevelop;
-using ICSharpCode.SharpDevelop.Gui;
-
-namespace ICSharpCode.PythonBinding
-{
- ///
- /// Converts VB.NET or C# code to Python.
- ///
- public class ConvertToPythonMenuCommand : AbstractMenuCommand
- {
- ScriptingTextEditorViewContent view;
-
- public override void Run()
- {
- Run(new PythonWorkbench());
- }
-
- protected void Run(IScriptingWorkbench workbench)
- {
- view = new ScriptingTextEditorViewContent(workbench);
- string code = GeneratePythonCode();
- ShowPythonCodeInNewWindow(code);
- }
-
- string GeneratePythonCode()
- {
- NRefactoryToPythonConverter converter = NRefactoryToPythonConverter.Create(view.PrimaryFileName);
- converter.IndentString = view.TextEditorOptions.IndentationString;
- return converter.Convert(view.EditableView.Text);
- }
-
- void ShowPythonCodeInNewWindow(string code)
- {
- NewFile("Generated.py", "Python", code);
- }
-
- ///
- /// Creates a new file using the FileService by default.
- ///
- protected virtual void NewFile(string defaultName, string language, string content)
- {
- FileService.NewFile(defaultName, content);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/IPythonResolver.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/IPythonResolver.cs
deleted file mode 100644
index 96e364fc04e..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/IPythonResolver.cs
+++ /dev/null
@@ -1,28 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using ICSharpCode.SharpDevelop.Dom;
-
-namespace ICSharpCode.PythonBinding
-{
- public interface IPythonResolver
- {
- ResolveResult Resolve(PythonResolverContext resolverContext);
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/MemberName.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/MemberName.cs
deleted file mode 100644
index f3af28dfbdb..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/MemberName.cs
+++ /dev/null
@@ -1,90 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-
-namespace ICSharpCode.PythonBinding
-{
- ///
- /// Split up an expression into a member name and a type name.
- ///
- ///
- /// "myObject.Field" => "myObject" + "Field"
- /// "System.Console.WriteLine" => "System.Console" + "Console.WriteLine"
- ///
- public class MemberName
- {
- string name = String.Empty;
- string type = String.Empty;
-
- public MemberName(string expression)
- {
- Parse(expression);
- }
-
- public MemberName(string typeName, string memberName)
- {
- this.type = typeName;
- this.name = memberName;
- }
-
- void Parse(string expression)
- {
- if (!String.IsNullOrEmpty(expression)) {
- int index = expression.LastIndexOf('.');
- if (index > 0) {
- type = expression.Substring(0, index);
- name = expression.Substring(index + 1);
- } else {
- type = expression;
- }
- }
- }
-
- public string Name {
- get { return name; }
- }
-
- public bool HasName {
- get { return !String.IsNullOrEmpty(name); }
- }
-
- public string Type {
- get { return type; }
- }
-
- public override string ToString()
- {
- return String.Format("Type: {0}, Member: {1}", type, name);
- }
-
- public override bool Equals(object obj)
- {
- MemberName rhs = obj as MemberName;
- if (rhs != null) {
- return (name == rhs.name) && (type == rhs.type);
- }
- return false;
- }
-
- public override int GetHashCode()
- {
- return name.GetHashCode() ^ type.GetHashCode();
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/NRefactoryToPythonConverter.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/NRefactoryToPythonConverter.cs
deleted file mode 100644
index 7d97f031f6f..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/NRefactoryToPythonConverter.cs
+++ /dev/null
@@ -1,2074 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.IO;
-using System.Text;
-using ICSharpCode.NRefactory;
-using ICSharpCode.NRefactory.Ast;
-using ICSharpCode.NRefactory.Parser;
-using ICSharpCode.NRefactory.PrettyPrinter;
-using ICSharpCode.NRefactory.Visitors;
-
-namespace ICSharpCode.PythonBinding
-{
- ///
- /// Used to convert VB.NET and C# to Python.
- ///
- public class NRefactoryToPythonConverter : NodeTrackingAstVisitor, IOutputFormatter
- {
- string indentString = "\t";
- PythonCodeBuilder codeBuilder;
-
- // Holds the constructor for the class being converted. This is used to identify class fields.
- PythonConstructorInfo constructorInfo;
-
- // Holds the parameters of the current method. This is used to identify
- // references to fields or parameters.
- List methodParameters = new List();
- MethodDeclaration currentMethod;
-
- // Holds the names of any parameters defined for this class.
- List propertyNames = new List();
-
- SupportedLanguage language;
- List entryPointMethods;
-
- SpecialNodesInserter specialNodesInserter;
- INode currentNode;
- List xmlDocComments = new List();
-
- static readonly string Docstring = "\"\"\"";
-
- public NRefactoryToPythonConverter(SupportedLanguage language)
- {
- this.language = language;
- }
-
- public NRefactoryToPythonConverter()
- {
- }
-
- ///
- /// Gets or sets the source language that will be converted to python.
- ///
- public SupportedLanguage SupportedLanguage {
- get { return language; }
- }
-
- ///
- /// Creates either C# to Python or VB.NET to Python converter based on the filename extension that is to be converted.
- ///
- /// Null if the file cannot be converted.
- public static NRefactoryToPythonConverter Create(string fileName)
- {
- if (CanConvert(fileName)) {
- return new NRefactoryToPythonConverter(GetSupportedLanguage(fileName));
- }
- return null;
- }
-
- ///
- /// Only C# (.cs) or VB.NET (.vb) files can be converted.
- ///
- public static bool CanConvert(string fileName)
- {
- string extension = Path.GetExtension(fileName);
- if (!String.IsNullOrEmpty(extension)) {
- extension = extension.ToLowerInvariant();
- return (extension == ".cs") || (extension == ".vb");
- }
- return false;
- }
-
- ///
- /// Gets or sets the string that will be used to indent the generated Python code.
- ///
- public string IndentString {
- get { return indentString; }
- set { indentString = value; }
- }
-
- ///
- /// Generates compilation unit from the code.
- ///
- ///
- /// Uses ISpecials so comments can be converted.
- ///
- ///
- /// The code to convert to a compilation unit.
- ///
- public CompilationUnit GenerateCompilationUnit(string source, SupportedLanguage language)
- {
- using (IParser parser = ParserFactory.CreateParser(language, new StringReader(source))) {
- parser.Parse();
- parser.CompilationUnit.UserData = parser.Lexer.SpecialTracker.RetrieveSpecials();
- return parser.CompilationUnit;
- }
- }
-
- ///
- /// Converts the source code to Python.
- ///
- public string Convert(string source)
- {
- return Convert(source, language);
- }
-
- ///
- /// Converts the source code to Python.
- ///
- public string Convert(string source, SupportedLanguage language)
- {
- // Convert to NRefactory code DOM.
- CompilationUnit unit = GenerateCompilationUnit(source, language);
-
- SpecialOutputVisitor specialOutputVisitor = new SpecialOutputVisitor(this);
- specialNodesInserter = new SpecialNodesInserter(unit.UserData as List, specialOutputVisitor);
-
- // Convert to Python code.
- entryPointMethods = new List();
- codeBuilder = new PythonCodeBuilder();
- codeBuilder.IndentString = indentString;
- unit.AcceptVisitor(this, null);
-
- return codeBuilder.ToString().Trim();
- }
-
- ///
- /// Gets a list of possible entry point methods found when converting the
- /// python source code.
- ///
- public ReadOnlyCollection EntryPointMethods {
- get { return entryPointMethods.AsReadOnly(); }
- }
-
- ///
- /// Generates code to call the main entry point.
- ///
- public string GenerateMainMethodCall(MethodDeclaration methodDeclaration)
- {
- StringBuilder code = new StringBuilder();
- code.Append(GetTypeName(methodDeclaration));
- code.Append('.');
- code.Append(methodDeclaration.Name);
- code.Append('(');
- if (methodDeclaration.Parameters.Count > 0) {
- code.Append("None");
- }
- code.Append(')');
-
- return code.ToString();
- }
-
- ///
- /// Converts from the NRefactory's binary operator type to a string.
- ///
- public static string GetBinaryOperator(BinaryOperatorType binaryOperatorType)
- {
- switch (binaryOperatorType) {
- case BinaryOperatorType.Add:
- return "+";
- case BinaryOperatorType.BitwiseAnd:
- return "&";
- case BinaryOperatorType.BitwiseOr:
- return "|";
- case BinaryOperatorType.Divide:
- case BinaryOperatorType.DivideInteger:
- return "/";
- case BinaryOperatorType.ShiftLeft:
- return "<<";
- case BinaryOperatorType.ShiftRight:
- return ">>";
- case BinaryOperatorType.GreaterThan:
- return ">";
- case BinaryOperatorType.GreaterThanOrEqual:
- return ">=";
- case BinaryOperatorType.InEquality:
- return "!=";
- case BinaryOperatorType.LessThan:
- return "<";
- case BinaryOperatorType.LessThanOrEqual:
- return "<=";
- case BinaryOperatorType.LogicalAnd:
- return "and";
- case BinaryOperatorType.LogicalOr:
- return "or";
- case BinaryOperatorType.ExclusiveOr:
- return "^";
- case BinaryOperatorType.Modulus:
- return "%";
- case BinaryOperatorType.Multiply:
- return "*";
- case BinaryOperatorType.ReferenceEquality:
- return "is";
- case BinaryOperatorType.Subtract:
- return "-";
- case BinaryOperatorType.Concat:
- return "+";
- default:
- return "==";
- }
- }
-
- public override object TrackedVisitAddHandlerStatement(AddHandlerStatement addHandlerStatement, object data)
- {
- Console.WriteLine("VisitAddHandlerStatement");
- return null;
- }
-
- public override object TrackedVisitAddressOfExpression(AddressOfExpression addressOfExpression, object data)
- {
- Console.WriteLine("VisitAddressOfExpression");
- return null;
- }
-
- public override object TrackedVisitAnonymousMethodExpression(AnonymousMethodExpression anonymousMethodExpression, object data)
- {
- Console.WriteLine("VisitAnonymousMethodExpression");
- return null;
- }
-
- public override object TrackedVisitArrayCreateExpression(ArrayCreateExpression arrayCreateExpression, object data)
- {
- string arrayType = GetTypeName(arrayCreateExpression.CreateType);
- if (arrayCreateExpression.ArrayInitializer.CreateExpressions.Count == 0) {
- Append("Array.CreateInstance(" + arrayType);
- if (arrayCreateExpression.Arguments.Count > 0) {
- foreach (Expression expression in arrayCreateExpression.Arguments) {
- Append(", ");
- expression.AcceptVisitor(this, data);
- }
- Append(")");
- } else {
- Append(", 0)");
- }
- } else {
- Append("Array[" + arrayType + "]");
-
- // Add initializers.
- Append("((");
- bool firstItem = true;
- foreach (Expression expression in arrayCreateExpression.ArrayInitializer.CreateExpressions) {
- if (firstItem) {
- firstItem = false;
- } else {
- Append(", ");
- }
- expression.AcceptVisitor(this, data);
- }
- Append("))");
- }
- return null;
- }
-
- public override object TrackedVisitAssignmentExpression(AssignmentExpression assignmentExpression, object data)
- {
- switch (assignmentExpression.Op) {
- case AssignmentOperatorType.Assign:
- return CreateSimpleAssignment(assignmentExpression, "=", data);
- case AssignmentOperatorType.Add:
- if (IsAddEventHandler(assignmentExpression)) {
- return CreateHandlerStatement(assignmentExpression.Left, "+=", assignmentExpression.Right);
- }
- return CreateSimpleAssignment(assignmentExpression, "+=", data);
- case AssignmentOperatorType.Subtract:
- if (IsRemoveEventHandler(assignmentExpression)) {
- return CreateHandlerStatement(assignmentExpression.Left, "-=", assignmentExpression.Right);
- }
- return CreateSimpleAssignment(assignmentExpression, "-=", data);
- case AssignmentOperatorType.Modulus:
- return CreateSimpleAssignment(assignmentExpression, "%=", data);
- case AssignmentOperatorType.Multiply:
- return CreateSimpleAssignment(assignmentExpression, "*=", data);
- case AssignmentOperatorType.Divide:
- case AssignmentOperatorType.DivideInteger:
- return CreateSimpleAssignment(assignmentExpression, "/=", data);
- case AssignmentOperatorType.BitwiseAnd:
- return CreateSimpleAssignment(assignmentExpression, "&=", data);
- case AssignmentOperatorType.BitwiseOr:
- return CreateSimpleAssignment(assignmentExpression, "|=", data);
- case AssignmentOperatorType.ExclusiveOr:
- return CreateSimpleAssignment(assignmentExpression, "^=", data);
- case AssignmentOperatorType.ShiftLeft:
- return CreateSimpleAssignment(assignmentExpression, "<<=", data);
- case AssignmentOperatorType.ShiftRight:
- return CreateSimpleAssignment(assignmentExpression, ">>=", data);
- case AssignmentOperatorType.ConcatString:
- return CreateSimpleAssignment(assignmentExpression, "+=", data);
- case AssignmentOperatorType.Power:
- return CreateSimpleAssignment(assignmentExpression, "**=", data);
- }
-
- return null;
- }
-
- public override object TrackedVisitAttribute(ICSharpCode.NRefactory.Ast.Attribute attribute, object data)
- {
- return null;
- }
-
- public override object TrackedVisitAttributeSection(AttributeSection attributeSection, object data)
- {
- return null;
- }
-
- ///
- /// Converts a base class reference to a this reference.
- /// Python has no concept of a direct base class reference so
- /// "base" is converted to "self".
- ///
- public override object TrackedVisitBaseReferenceExpression(BaseReferenceExpression baseReferenceExpression, object data)
- {
- Append("self");
- return null;
- }
-
- public override object TrackedVisitBinaryOperatorExpression(BinaryOperatorExpression binaryOperatorExpression, object data)
- {
- binaryOperatorExpression.Left.AcceptVisitor(this, data);
- Append(" ");
- Append(GetBinaryOperator(binaryOperatorExpression.Op));
- Append(" ");
- binaryOperatorExpression.Right.AcceptVisitor(this, data);
- return null;
- }
-
- ///
- /// Visits the statement's children.
- ///
- public override object TrackedVisitBlockStatement(BlockStatement blockStatement, object data)
- {
- return blockStatement.AcceptChildren(this, data);
- }
-
- public override object TrackedVisitBreakStatement(BreakStatement breakStatement, object data)
- {
- AppendIndentedLine("break");
- return null;
- }
-
- public override object TrackedVisitCaseLabel(CaseLabel caseLabel, object data)
- {
- return null;
- }
-
- ///
- /// Ignore the cast and just visit the expression inside the cast.
- ///
- public override object TrackedVisitCastExpression(CastExpression castExpression, object data)
- {
- return castExpression.Expression.AcceptVisitor(this, data);
- }
-
- public override object TrackedVisitCatchClause(CatchClause catchClause, object data)
- {
- Console.WriteLine("VisitCatchClause");
- return null;
- }
-
- public override object TrackedVisitCheckedExpression(CheckedExpression checkedExpression, object data)
- {
- Console.WriteLine("VisitCheckedExpression");
- return null;
- }
-
- public override object TrackedVisitCheckedStatement(CheckedStatement checkedStatement, object data)
- {
- Console.WriteLine("VisitCheckedStatement");
- return null;
- }
-
- public override object TrackedVisitClassReferenceExpression(ClassReferenceExpression classReferenceExpression, object data)
- {
- Console.WriteLine("VisitClassReferenceExpression");
- return null;
- }
-
- public override object TrackedVisitCompilationUnit(CompilationUnit compilationUnit, object data)
- {
- // Visit the child items of the compilation unit.
- compilationUnit.AcceptChildren(this, data);
- return null;
- }
-
- ///
- /// An ternary operator expression:
- ///
- /// string a = test ? "Ape" : "Monkey";
- ///
- /// In Python this gets converted to:
- ///
- /// a = "Ape" if test else "Monkey"
- ///
- public override object TrackedVisitConditionalExpression(ConditionalExpression conditionalExpression, object data)
- {
- // Add true part.
- conditionalExpression.TrueExpression.AcceptVisitor(this, data);
-
- // Add condition.
- Append(" if ");
- conditionalExpression.Condition.AcceptVisitor(this, data);
-
- // Add false part.
- Append(" else ");
- conditionalExpression.FalseExpression.AcceptVisitor(this, data);
- return null;
- }
-
- public override object TrackedVisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration, object data)
- {
- CreateConstructor(constructorInfo);
- return null;
- }
-
- public override object TrackedVisitConstructorInitializer(ConstructorInitializer constructorInitializer, object data)
- {
- Console.WriteLine("VisitConstructorInitializer");
- return null;
- }
-
- public override object TrackedVisitContinueStatement(ContinueStatement continueStatement, object data)
- {
- AppendIndentedLine("continue");
- return null;
- }
-
- public override object TrackedVisitDeclareDeclaration(DeclareDeclaration declareDeclaration, object data)
- {
- Console.WriteLine("VisitDeclareDeclaration");
- return null;
- }
-
- public override object TrackedVisitDefaultValueExpression(DefaultValueExpression defaultValueExpression, object data)
- {
- Console.WriteLine("VisitDefaultValueExpression");
- return null;
- }
-
- public override object TrackedVisitDelegateDeclaration(DelegateDeclaration delegateDeclaration, object data)
- {
- Console.WriteLine("VisitDelegateDeclaration");
- return null;
- }
-
- public override object TrackedVisitDestructorDeclaration(DestructorDeclaration destructorDeclaration, object data)
- {
- AppendIndentedLine("def __del__(self):");
- IncreaseIndent();
- destructorDeclaration.Body.AcceptVisitor(this, data);
- DecreaseIndent();
- return null;
- }
-
- public override object TrackedVisitDirectionExpression(DirectionExpression directionExpression, object data)
- {
- Console.WriteLine("VisitDirectionExpression");
- return null;
- }
-
- public override object TrackedVisitDoLoopStatement(DoLoopStatement doLoopStatement, object data)
- {
- AppendIndented("while ");
- doLoopStatement.Condition.AcceptVisitor(this, data);
- Append(":");
- AppendLine();
-
- IncreaseIndent();
- doLoopStatement.EmbeddedStatement.AcceptVisitor(this, data);
- DecreaseIndent();
-
- return null;
- }
-
- public override object TrackedVisitElseIfSection(ElseIfSection elseIfSection, object data)
- {
- // Convert condition.
- AppendIndented("elif ");
- elseIfSection.Condition.AcceptVisitor(this, data);
- Append(":");
- AppendLine();
-
- // Convert else if body statements.
- IncreaseIndent();
- elseIfSection.EmbeddedStatement.AcceptVisitor(this, data);
- DecreaseIndent();
-
- return null;
- }
-
- public override object TrackedVisitEmptyStatement(EmptyStatement emptyStatement, object data)
- {
- Console.WriteLine("VisitEmptyStatement");
- return null;
- }
-
- public override object TrackedVisitEndStatement(EndStatement endStatement, object data)
- {
- Console.WriteLine("VistEndStatement");
- return null;
- }
-
- public override object TrackedVisitEraseStatement(EraseStatement eraseStatement, object data)
- {
- Console.WriteLine("VisitEraseStatement");
- return null;
- }
-
- public override object TrackedVisitErrorStatement(ErrorStatement errorStatement, object data)
- {
- Console.WriteLine("VisitErrorStatement");
- return null;
- }
-
- public override object TrackedVisitEventAddRegion(EventAddRegion eventAddRegion, object data)
- {
- Console.WriteLine("VisitEventAddRegion");
- return null;
- }
-
- public override object TrackedVisitEventDeclaration(EventDeclaration eventDeclaration, object data)
- {
- Console.WriteLine("VisitEventDeclaration");
- return null;
- }
-
- public override object TrackedVisitEventRaiseRegion(EventRaiseRegion eventRaiseRegion, object data)
- {
- Console.WriteLine("VisitEventRaiseRegion");
- return null;
- }
-
- public override object TrackedVisitEventRemoveRegion(EventRemoveRegion eventRemoveRegion, object data)
- {
- Console.WriteLine("VisitEventRemoveRegion");
- return null;
- }
-
- public override object TrackedVisitExitStatement(ExitStatement exitStatement, object data)
- {
- AppendIndentedLine("break");
- return null;
- }
-
- public override object TrackedVisitExpressionStatement(ExpressionStatement expressionStatement, object data)
- {
- // Convert the expression.
- AppendIndented(String.Empty);
- expressionStatement.Expression.AcceptVisitor(this, data);
- AppendLine();
- return null;
- }
-
- public override object TrackedVisitFieldDeclaration(FieldDeclaration fieldDeclaration, object data)
- {
- return null;
- }
-
- public override object TrackedVisitFixedStatement(FixedStatement fixedStatement, object data)
- {
- Console.WriteLine("VisitFixedStatement");
- return null;
- }
-
- public override object TrackedVisitForeachStatement(ForeachStatement foreachStatement, object data)
- {
- // Convert the for loop's initializers.
- AppendIndented(String.Empty);
- CreateInitStatement(foreachStatement);
- AppendLine();
-
- // Convert the for loop's test expression.
- AppendIndentedLine("while enumerator.MoveNext():");
-
- // Move the initializer in the foreach loop to the
- // first line of the for loop's body.
- IncreaseIndent();
- AppendIndentedLine(foreachStatement.VariableName + " = enumerator.Current");
-
- // Visit the for loop's body.
- foreachStatement.EmbeddedStatement.AcceptVisitor(this, data);
- DecreaseIndent();
-
- return null;
- }
-
- ///
- /// Converts from an NRefactory VB.NET for next loop:
- ///
- /// for i As Integer = 0 To 4
- /// Next
- ///
- /// to Python's:
- ///
- /// i = 0
- /// while i < 5:
- ///
- public override object TrackedVisitForNextStatement(ForNextStatement forNextStatement, object data)
- {
- // Convert the for loop's initializers.
- string variableName = forNextStatement.VariableName;
- AppendIndented(variableName);
- Append(" = ");
- forNextStatement.Start.AcceptVisitor(this, data);
- AppendLine();
-
- // Convert the for loop's test expression.
- AppendIndented("while ");
- Append(variableName);
- Append(" <= ");
- forNextStatement.End.AcceptVisitor(this, data);
- Append(":");
- AppendLine();
-
- // Visit the for loop's body.
- IncreaseIndent();
- forNextStatement.EmbeddedStatement.AcceptVisitor(this, data);
-
- // Convert the for loop's increment statement.
- AppendIndented(variableName);
- Append(" = ");
- Append(variableName);
- Append(" + ");
- if (forNextStatement.Step.IsNull) {
- Append("1");
- } else {
- forNextStatement.Step.AcceptVisitor(this, data);
- }
- AppendLine();
- DecreaseIndent();
-
- return null;
- }
-
- ///
- /// Converts from an NRefactory for loop:
- ///
- /// for (int i = 0; i < 5; i = i + 1)
- ///
- /// to Python's:
- ///
- /// i = 0
- /// while i < 5:
- ///
- public override object TrackedVisitForStatement(ForStatement forStatement, object data)
- {
- // Convert the for loop's initializers.
- foreach (Statement statement in forStatement.Initializers) {
- statement.AcceptVisitor(this, data);
- }
-
- // Convert the for loop's test expression.
- AppendIndented("while ");
- forStatement.Condition.AcceptVisitor(this, data);
- Append(":");
- AppendLine();
-
- // Visit the for loop's body.
- IncreaseIndent();
- forStatement.EmbeddedStatement.AcceptVisitor(this, data);
-
- // Convert the for loop's increment statement.
- foreach (Statement statement in forStatement.Iterator) {
- statement.AcceptVisitor(this, data);
- }
- DecreaseIndent();
-
- return null;
- }
-
- public override object TrackedVisitGotoCaseStatement(GotoCaseStatement gotoCaseStatement, object data)
- {
- Console.WriteLine("VisitGotoCaseStatement");
- return null;
- }
-
- public override object TrackedVisitGotoStatement(GotoStatement gotoStatement, object data)
- {
- Console.WriteLine("VisitGotoStatement");
- return null;
- }
-
- public override object TrackedVisitIdentifierExpression(IdentifierExpression identifierExpression, object data)
- {
- string name = identifierExpression.Identifier;
- if (IsField(name)) {
- Append("self._" + name);
- } else if (IsProperty(name) && !IsMethodParameter(name)) {
- Append("self." + name);
- } else {
- Append(name);
- }
- return null;
- }
-
- public override object TrackedVisitIfElseStatement(IfElseStatement ifElseStatement, object data)
- {
- // Convert condition.
- AppendIndented("if ");
- ifElseStatement.Condition.AcceptVisitor(this, data);
- Append(":");
- AppendLine();
-
- // Convert true statements.
- IncreaseIndent();
- foreach (Statement statement in ifElseStatement.TrueStatement) {
- statement.AcceptVisitor(this, data);
- }
- DecreaseIndent();
-
- // Convert else if sections.
- if (ifElseStatement.HasElseIfSections) {
- foreach (ElseIfSection elseIfSection in ifElseStatement.ElseIfSections) {
- elseIfSection.AcceptVisitor(this, data);
- }
- }
-
- // Convert false statements.
- if (ifElseStatement.HasElseStatements) {
- AppendIndentedLine("else:");
- IncreaseIndent();
- foreach (Statement statement in ifElseStatement.FalseStatement) {
- statement.AcceptVisitor(this, data);
- }
- DecreaseIndent();
- }
-
- return null;
- }
-
- public override object TrackedVisitIndexerExpression(IndexerExpression indexerExpression, object data)
- {
- indexerExpression.TargetObject.AcceptVisitor(this, data);
-
- // Add indices.
- foreach (Expression expression in indexerExpression.Indexes) {
- Append("[");
- expression.AcceptVisitor(this, data);
- Append("]");
- }
-
- return null;
- }
-
- public override object TrackedVisitInnerClassTypeReference(InnerClassTypeReference innerClassTypeReference, object data)
- {
- Console.WriteLine("VisitInnerClassTypeReference");
- return null;
- }
-
- public override object TrackedVisitInterfaceImplementation(InterfaceImplementation interfaceImplementation, object data)
- {
- Console.WriteLine("VisitInterfaceImplementation");
- return null;
- }
-
- public override object TrackedVisitInvocationExpression(InvocationExpression invocationExpression, object data)
- {
- MemberReferenceExpression memberRefExpression = invocationExpression.TargetObject as MemberReferenceExpression;
- IdentifierExpression identifierExpression = invocationExpression.TargetObject as IdentifierExpression;
- if (memberRefExpression != null) {
- memberRefExpression.TargetObject.AcceptVisitor(this, data);
- Append("." + memberRefExpression.MemberName);
- } else if (identifierExpression != null) {
- if ((currentMethod != null) && IsStatic(currentMethod)) {
- Append(GetTypeName(currentMethod) + ".");
- } else {
- Append("self.");
- }
- Append(identifierExpression.Identifier);
- }
-
- // Create method parameters
- Append("(");
- bool firstParam = true;
- foreach (Expression param in invocationExpression.Arguments) {
- if (firstParam) {
- firstParam = false;
- } else {
- Append(", ");
- }
- param.AcceptVisitor(this, data);
- }
- Append(")");
- return null;
- }
-
- public override object TrackedVisitLabelStatement(LabelStatement labelStatement, object data)
- {
- Console.WriteLine("VisitLabelStatement");
- return null;
- }
-
- ///
- /// The variable declaration is not created if the variable has no initializer.
- ///
- public override object TrackedVisitLocalVariableDeclaration(LocalVariableDeclaration localVariableDeclaration, object data)
- {
- foreach (VariableDeclaration variableDeclaration in localVariableDeclaration.Variables) {
- if (!variableDeclaration.Initializer.IsNull) {
-
- AddTypeToArrayInitializerIfMissing(variableDeclaration);
-
- // Create variable declaration.
- AppendIndented(variableDeclaration.Name + " = ");
-
- // Generate the variable initializer.
- variableDeclaration.Initializer.AcceptVisitor(this, data);
- AppendLine();
- }
- }
- return null;
- }
-
- public override object TrackedVisitLockStatement(LockStatement lockStatement, object data)
- {
- Console.WriteLine("VisitLockStatement");
- return null;
- }
-
- public override object TrackedVisitMemberInitializerExpression(MemberInitializerExpression memberInitializerExpression, object data)
- {
- Append(memberInitializerExpression.Name);
- Append(" = ");
- memberInitializerExpression.Expression.AcceptVisitor(this, data);
- return null;
- }
-
- ///
- /// Adds a CodeMemberMethod to the current class being visited.
- ///
- public override object TrackedVisitMethodDeclaration(MethodDeclaration methodDeclaration, object data)
- {
- // Add method name.
- currentMethod = methodDeclaration;
- string methodName = methodDeclaration.Name;
- AppendIndented("def " + methodName);
-
- // Add the parameters.
- AddParameters(methodDeclaration);
- methodParameters = methodDeclaration.Parameters;
- AppendLine();
-
- IncreaseIndent();
- AppendDocstring(xmlDocComments);
- if (methodDeclaration.Body.Children.Count > 0) {
- methodDeclaration.Body.AcceptVisitor(this, data);
- } else {
- AppendIndentedPassStatement();
- }
-
- DecreaseIndent();
- AppendLine();
-
- if (IsStatic(methodDeclaration)) {
- AppendIndentedLine(methodDeclaration.Name + " = staticmethod(" + methodDeclaration.Name + ")");
- AppendLine();
-
- // Save Main entry point method.
- SaveMethodIfMainEntryPoint(methodDeclaration);
- }
-
- currentMethod = null;
-
- return null;
- }
-
- public override object TrackedVisitNamedArgumentExpression(NamedArgumentExpression namedArgumentExpression, object data)
- {
- Append(namedArgumentExpression.Name);
- Append(" = ");
- namedArgumentExpression.Expression.AcceptVisitor(this, data);
- return null;
- }
-
- ///
- /// Visits the namespace declaration and all child nodes.
- ///
- public override object TrackedVisitNamespaceDeclaration(NamespaceDeclaration namespaceDeclaration, object data)
- {
- return namespaceDeclaration.AcceptChildren(this, data);
- }
-
- ///
- /// Converts an NRefactory's ObjectCreateExpression to a code dom's
- /// CodeObjectCreateExpression.
- ///
- public override object TrackedVisitObjectCreateExpression(ObjectCreateExpression objectCreateExpression, object data)
- {
- Append(objectCreateExpression.CreateType.Type);
- if (IsGenericType(objectCreateExpression)) {
- AppendGenericTypes(objectCreateExpression);
- }
- Append("(");
-
- // Add parameters.
- bool firstParameter = true;
- foreach (Expression expression in objectCreateExpression.Parameters) {
- if (!firstParameter) {
- Append(", ");
- }
- expression.AcceptVisitor(this, data);
- firstParameter = false;
- }
-
- // Add object initializers.
- bool firstInitializer = true;
- foreach (Expression expression in objectCreateExpression.ObjectInitializer.CreateExpressions) {
- if (!firstInitializer) {
- Append(", ");
- }
- expression.AcceptVisitor(this, data);
- firstInitializer = false;
- }
-
- Append(")");
- return null;
- }
-
- public override object TrackedVisitOnErrorStatement(OnErrorStatement onErrorStatement, object data)
- {
- return null;
- }
-
- public override object TrackedVisitOperatorDeclaration(OperatorDeclaration operatorDeclaration, object data)
- {
- Console.WriteLine("VisitOperatorDeclaration");
- return null;
- }
-
- public override object TrackedVisitOptionDeclaration(OptionDeclaration optionDeclaration, object data)
- {
- Console.WriteLine("VisitOptionDeclaration");
- return null;
- }
-
- public override object TrackedVisitExternAliasDirective(ExternAliasDirective externAliasDirective, object data)
- {
- Console.WriteLine("ExternAliasDirective");
- return null;
- }
-
- public override object TrackedVisitParameterDeclarationExpression(ParameterDeclarationExpression parameterDeclarationExpression, object data)
- {
- Console.WriteLine("VisitParameterDeclarationExpression");
- return null;
- }
-
- public override object TrackedVisitParenthesizedExpression(ParenthesizedExpression parenthesizedExpression, object data)
- {
- Append("(" );
- parenthesizedExpression.Expression.AcceptVisitor(this, data);
- Append(")");
- return null;
- }
-
- public override object TrackedVisitPointerReferenceExpression(PointerReferenceExpression pointerReferenceExpression, object data)
- {
- Console.WriteLine("VisitPointerReferenceExpression");
- return null;
- }
-
- public override object TrackedVisitPrimitiveExpression(PrimitiveExpression primitiveExpression, object data)
- {
- if (primitiveExpression.Value == null) {
- Append("None");
- } else if (primitiveExpression.Value is Boolean) {
- Append(primitiveExpression.Value.ToString());
- } else {
- Append(primitiveExpression.StringValue);
- }
- return null;
- }
-
- public override object TrackedVisitPropertyDeclaration(PropertyDeclaration propertyDeclaration, object data)
- {
- string propertyName = propertyDeclaration.Name;
- propertyNames.Add(propertyName);
-
- // Add get statements.
- if (propertyDeclaration.HasGetRegion) {
- AppendIndentedLine("def get_" + propertyName + "(self):");
- IncreaseIndent();
- propertyDeclaration.GetRegion.Block.AcceptVisitor(this, data);
- DecreaseIndent();
- AppendLine();
- }
-
- // Add set statements.
- if (propertyDeclaration.HasSetRegion) {
- AppendIndentedLine("def set_" + propertyName + "(self, value):");
- IncreaseIndent();
- propertyDeclaration.SetRegion.Block.AcceptVisitor(this, data);
- DecreaseIndent();
- AppendLine();
- }
-
- AppendPropertyDecorator(propertyDeclaration);
- AppendLine();
-
- return null;
- }
-
- public override object TrackedVisitPropertyGetRegion(PropertyGetRegion propertyGetRegion, object data)
- {
- Console.WriteLine("VisitPropertyGetRegion");
- return null;
- }
-
- public override object TrackedVisitPropertySetRegion(PropertySetRegion propertySetRegion, object data)
- {
- Console.WriteLine("VisitPropertySetRegion");
- return null;
- }
-
- public override object TrackedVisitRaiseEventStatement(RaiseEventStatement raiseEventStatement, object data)
- {
- Console.WriteLine("VisitRaiseEventStatement");
- return null;
- }
-
- public override object TrackedVisitReDimStatement(ReDimStatement reDimStatement, object data)
- {
- Console.WriteLine("VisitReDimStatement");
- return null;
- }
-
- public override object TrackedVisitRemoveHandlerStatement(RemoveHandlerStatement removeHandlerStatement, object data)
- {
- Console.WriteLine("VisitRemoveHandlerStatement");
- return null;
- }
-
- public override object TrackedVisitResumeStatement(ResumeStatement resumeStatement, object data)
- {
- Console.WriteLine("VisitResumeStatement");
- return null;
- }
-
- ///
- /// Converts a NRefactory ReturnStatement to a code dom's
- /// CodeMethodReturnStatement.
- ///
- public override object TrackedVisitReturnStatement(ReturnStatement returnStatement, object data)
- {
- AppendIndented("return ");
- returnStatement.Expression.AcceptVisitor(this, data);
- AppendLine();
- return null;
- }
-
- public override object TrackedVisitSizeOfExpression(SizeOfExpression sizeOfExpression, object data)
- {
- Console.WriteLine("VisitSizeOfExpression");
- return null;
- }
-
- public override object TrackedVisitStackAllocExpression(StackAllocExpression stackAllocExpression, object data)
- {
- return null;
- }
-
- public override object TrackedVisitStopStatement(StopStatement stopStatement, object data)
- {
- return null;
- }
-
- public override object TrackedVisitSwitchSection(SwitchSection switchSection, object data)
- {
- return null;
- }
-
- public override object TrackedVisitSwitchStatement(SwitchStatement switchStatement, object data)
- {
- bool firstSection = true;
- foreach (SwitchSection section in switchStatement.SwitchSections) {
- // Create if/elif/else condition.
- CreateSwitchCaseCondition(switchStatement.SwitchExpression, section, firstSection);
-
- // Create if/elif/else body.
- IncreaseIndent();
- CreateSwitchCaseBody(section);
- DecreaseIndent();
-
- firstSection = false;
- }
- return null;
- }
-
- public override object TrackedVisitTemplateDefinition(TemplateDefinition templateDefinition, object data)
- {
- return null;
- }
-
- public override object TrackedVisitThisReferenceExpression(ThisReferenceExpression thisReferenceExpression, object data)
- {
- Append("self");
- return null;
- }
-
- ///
- /// Converts an NRefactory throw statement to a code dom's throw exception statement.
- ///
- public override object TrackedVisitThrowStatement(ThrowStatement throwStatement, object data)
- {
- AppendIndented("raise ");
- throwStatement.Expression.AcceptVisitor(this, data);
- AppendLine();
- return null;
- }
-
- ///
- /// Converts an NRefactory try-catch statement to a code dom
- /// try-catch statement.
- ///
- public override object TrackedVisitTryCatchStatement(TryCatchStatement tryCatchStatement, object data)
- {
- // Convert try-catch body.
- AppendIndentedLine("try:");
- IncreaseIndent();
- tryCatchStatement.StatementBlock.AcceptVisitor(this, data);
- DecreaseIndent();
-
- // Convert catches.
- foreach (CatchClause catchClause in tryCatchStatement.CatchClauses) {
- AppendIndented("except ");
- Append(catchClause.TypeReference.Type);
- Append(", " + catchClause.VariableName + ":");
- AppendLine();
-
- // Convert catch child statements.
- IncreaseIndent();
- catchClause.StatementBlock.AcceptVisitor(this, data);
- DecreaseIndent();
- }
-
- // Convert finally block.
- AppendIndentedLine("finally:");
- IncreaseIndent();
- tryCatchStatement.FinallyBlock.AcceptVisitor(this, data);
- DecreaseIndent();
-
- return null;
- }
-
- ///
- /// Visits a class.
- ///
- public override object TrackedVisitTypeDeclaration(TypeDeclaration typeDeclaration, object data)
- {
- codeBuilder.AppendLineIfPreviousLineIsCode();
- AppendIndented("class " + typeDeclaration.Name);
- AppendBaseTypes(typeDeclaration.BaseTypes);
- AppendLine();
- IncreaseIndent();
- AppendDocstring(xmlDocComments);
- if (typeDeclaration.Children.Count > 0) {
- // Look for fields or a constructor for the type.
- constructorInfo = PythonConstructorInfo.GetConstructorInfo(typeDeclaration);
- if (constructorInfo != null) {
- if (constructorInfo.Constructor != null) {
- // Generate constructor later when VisitConstructorDeclaration method is called.
- // This allows the constructor comments to be converted in the right place.
- } else {
- CreateConstructor(constructorInfo);
- }
- }
-
- // Visit the rest of the class.
- typeDeclaration.AcceptChildren(this, data);
- } else {
- AppendIndentedPassStatement();
- }
- DecreaseIndent();
-
- return null;
- }
-
- public override object TrackedVisitTypeOfExpression(TypeOfExpression typeOfExpression, object data)
- {
- codeBuilder.InsertIndentedLine("import clr\r\n");
- Append("clr.GetClrType(");
- Append(GetTypeName(typeOfExpression.TypeReference));
- Append(")");
- return null;
- }
-
- public override object TrackedVisitTypeOfIsExpression(TypeOfIsExpression typeOfIsExpression, object data)
- {
- Console.WriteLine("VisitTypeOfIsExpression");
- return null;
- }
-
- public override object TrackedVisitTypeReference(TypeReference typeReference, object data)
- {
- Console.WriteLine("VisitTypeReference");
- return null;
- }
-
- public override object TrackedVisitTypeReferenceExpression(TypeReferenceExpression typeReferenceExpression, object data)
- {
- Append(GetTypeName(typeReferenceExpression.TypeReference));
- return null;
- }
-
- public override object TrackedVisitUnaryOperatorExpression(UnaryOperatorExpression unaryOperatorExpression, object data)
- {
- switch (unaryOperatorExpression.Op) {
- case UnaryOperatorType.PostIncrement:
- case UnaryOperatorType.Increment:
- // Change i++ or ++i to i += 1
- return CreateIncrementStatement(unaryOperatorExpression);
- case UnaryOperatorType.Decrement:
- case UnaryOperatorType.PostDecrement:
- // Change --i or i-- to i -= 1.
- return CreateDecrementStatement(unaryOperatorExpression);
- case UnaryOperatorType.Minus:
- return CreateUnaryOperatorStatement(GetBinaryOperator(BinaryOperatorType.Subtract), unaryOperatorExpression.Expression);
- case UnaryOperatorType.Plus:
- return CreateUnaryOperatorStatement(GetBinaryOperator(BinaryOperatorType.Add), unaryOperatorExpression.Expression);
- case UnaryOperatorType.Not:
- return CreateUnaryOperatorStatement("not ", unaryOperatorExpression.Expression);
- case UnaryOperatorType.BitNot:
- return CreateUnaryOperatorStatement("~", unaryOperatorExpression.Expression);
- }
- return null;
- }
-
- public override object TrackedVisitUncheckedExpression(UncheckedExpression uncheckedExpression, object data)
- {
- return null;
- }
-
- public override object TrackedVisitUncheckedStatement(UncheckedStatement uncheckedStatement, object data)
- {
- return null;
- }
-
- public override object TrackedVisitUnsafeStatement(UnsafeStatement unsafeStatement, object data)
- {
- return null;
- }
-
- public override object TrackedVisitUsing(Using @using, object data)
- {
- return null;
- }
-
- ///
- /// Converts using declarations into Python import statements.
- ///
- public override object TrackedVisitUsingDeclaration(UsingDeclaration usingDeclaration, object data)
- {
- // Add import statements for each using.
- foreach (Using @using in usingDeclaration.Usings) {
- AppendIndentedLine("from " + @using.Name + " import *");
- }
- return null;
- }
-
- public override object TrackedVisitUsingStatement(UsingStatement usingStatement, object data)
- {
- return null;
- }
-
- public override object TrackedVisitVariableDeclaration(VariableDeclaration variableDeclaration, object data)
- {
- AppendIndented(variableDeclaration.Name + " = ");
- variableDeclaration.Initializer.AcceptVisitor(this, data);
- AppendLine();
- return null;
- }
-
- public override object TrackedVisitWithStatement(WithStatement withStatement, object data)
- {
- return null;
- }
-
- public override object TrackedVisitYieldStatement(YieldStatement yieldStatement, object data)
- {
- return null;
- }
-
- public override object TrackedVisitCollectionInitializerExpression(CollectionInitializerExpression collectionInitializerExpression, object data)
- {
- return null;
- }
-
- public override object TrackedVisitLambdaExpression(LambdaExpression lambdaExpression, object data)
- {
- return null;
- }
-
- public override object TrackedVisitMemberReferenceExpression(MemberReferenceExpression memberReferenceExpression, object data)
- {
- memberReferenceExpression.TargetObject.AcceptVisitor(this, data);
- if ((memberReferenceExpression.TargetObject is ThisReferenceExpression) && !IsProperty(memberReferenceExpression.MemberName)) {
- Append("._");
- } else {
- Append(".");
- }
- Append(memberReferenceExpression.MemberName);
- return null;
- }
-
- public override object TrackedVisitQueryExpression(QueryExpression queryExpression, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionFromClause(QueryExpressionFromClause queryExpressionFromClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionGroupClause(QueryExpressionGroupClause queryExpressionGroupClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionJoinClause(QueryExpressionJoinClause queryExpressionJoinClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionLetClause(QueryExpressionLetClause queryExpressionLetClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionOrderClause(QueryExpressionOrderClause queryExpressionOrderClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionOrdering(QueryExpressionOrdering queryExpressionOrdering, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionSelectClause(QueryExpressionSelectClause queryExpressionSelectClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionWhereClause(QueryExpressionWhereClause queryExpressionWhereClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitExpressionRangeVariable(ExpressionRangeVariable expressionRangeVariable, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionAggregateClause(QueryExpressionAggregateClause queryExpressionAggregateClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionDistinctClause(QueryExpressionDistinctClause queryExpressionDistinctClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionGroupJoinVBClause(QueryExpressionGroupJoinVBClause queryExpressionGroupJoinVBClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionGroupVBClause(QueryExpressionGroupVBClause queryExpressionGroupVBClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionJoinConditionVB(QueryExpressionJoinConditionVB queryExpressionJoinConditionVB, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionJoinVBClause(QueryExpressionJoinVBClause queryExpressionJoinVBClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionLetVBClause(QueryExpressionLetVBClause queryExpressionLetVBClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionPartitionVBClause(QueryExpressionPartitionVBClause queryExpressionPartitionVBClause, object data)
- {
- return null;
- }
-
- public override object TrackedVisitQueryExpressionSelectVBClause(QueryExpressionSelectVBClause queryExpressionSelectVBClause, object data)
- {
- return null;
- }
-
- ///
- /// Appends any comments that appear before this node.
- ///
- protected override void BeginVisit(INode node)
- {
- xmlDocComments.Clear();
- currentNode = node;
- specialNodesInserter.AcceptNodeStart(node);
- }
-
- #region IOutputFormatter
-
- int IOutputFormatter.IndentationLevel {
- get { return codeBuilder.Indent; }
- set { ; }
- }
-
- string IOutputFormatter.Text {
- get { return String.Empty; }
- }
-
- bool IOutputFormatter.IsInMemberBody {
- get { return false; }
- set { ; }
- }
-
- void IOutputFormatter.NewLine()
- {
- }
-
- void IOutputFormatter.Indent()
- {
-
- }
-
- void IOutputFormatter.PrintComment(Comment comment, bool forceWriteInPreviousBlock)
- {
- if (comment.CommentType == CommentType.SingleLine) {
- AppendSingleLineComment(comment);
- } else if (comment.CommentType == CommentType.Block) {
- AppendMultilineComment(comment);
- } else if (comment.CommentType == CommentType.Documentation) {
- if (SupportsDocstring(currentNode)) {
- xmlDocComments.Add(comment);
- } else {
- AppendSingleLineComment(comment);
- }
- }
- }
-
- void IOutputFormatter.PrintPreprocessingDirective(PreprocessingDirective directive, bool forceWriteInPreviousBlock)
- {
- }
-
- void IOutputFormatter.PrintBlankLine(bool forceWriteInPreviousBlock)
- {
- }
-
- #endregion
-
- ///
- /// Checks that the field declaration has an initializer that
- /// sets an initial value.
- ///
- static bool FieldHasInitialValue(VariableDeclaration variableDeclaration)
- {
- Expression initializer = variableDeclaration.Initializer;
- return !initializer.IsNull;
- }
-
- ///
- /// Converts a post or pre increment expression to an assign statement.
- /// This converts "i++" and "++i" to "i = i + 1" since python
- /// does not support post increment expressions.
- ///
- object CreateIncrementStatement(UnaryOperatorExpression unaryOperatorExpression)
- {
- return CreateIncrementStatement(unaryOperatorExpression, 1, GetBinaryOperator(BinaryOperatorType.Add));
- }
-
- ///
- /// Converts a post or pre decrement expression to an assign statement.
- /// This converts "i--" and "--i" to "i -= 1" since python
- /// does not support post increment expressions.
- ///
- object CreateDecrementStatement(UnaryOperatorExpression unaryOperatorExpression)
- {
- return CreateIncrementStatement(unaryOperatorExpression, 1, GetBinaryOperator(BinaryOperatorType.Subtract));
- }
-
- ///
- /// Converts a post or pre increment expression to an assign statement.
- /// This converts "i++" and "++i" to "i += 1" since python
- /// does not support post increment expressions.
- ///
- object CreateIncrementStatement(UnaryOperatorExpression unaryOperatorExpression, int increment, string binaryOperator)
- {
- unaryOperatorExpression.Expression.AcceptVisitor(this, null);
- Append(" " + binaryOperator + "= ");
- Append(increment.ToString());
-
- return null;
- }
-
- ///
- /// Creates the statement used to initialize the for loop. The
- /// initialize statement will be "enumerator = variableName.GetEnumerator()"
- /// which simulates what happens in a foreach loop.
- ///
- object CreateInitStatement(ForeachStatement foreachStatement)
- {
- Append("enumerator = ");
- AppendForeachVariableName(foreachStatement);
- Append(".GetEnumerator()");
-
- return null;
- }
-
- ///
- /// Gets the name of the variable that is used in the
- /// foreach loop as the item being iterated and appends the code.
- ///
- void AppendForeachVariableName(ForeachStatement foreachStatement)
- {
- IdentifierExpression identifierExpression = foreachStatement.Expression as IdentifierExpression;
- InvocationExpression invocationExpression = foreachStatement.Expression as InvocationExpression;
- MemberReferenceExpression memberRefExpression = foreachStatement.Expression as MemberReferenceExpression;
- if (identifierExpression != null) {
- Append(identifierExpression.Identifier);
- } else if (invocationExpression != null) {
- invocationExpression.AcceptVisitor(this, null);
- } else if (memberRefExpression != null) {
- memberRefExpression.AcceptVisitor(this, null);
- }
- }
-
- ///
- /// Determines whether the identifier refers to a field in the
- /// current class.
- ///
- bool IsField(string name)
- {
- // Check the current method's parameters.
- if (IsMethodParameter(name)) {
- return false;
- }
-
- // Check the current class's fields.
- if (constructorInfo != null) {
- foreach (FieldDeclaration field in constructorInfo.Fields) {
- foreach (VariableDeclaration variable in field.Fields) {
- if (variable.Name == name) {
- return true;
- }
- }
- }
- }
- return false;
- }
-
- bool IsMethodParameter(string name)
- {
- foreach (ParameterDeclarationExpression param in methodParameters) {
- if (param.ParameterName == name) {
- return true;
- }
- }
- return false;
- }
-
- bool IsProperty(string name)
- {
- return propertyNames.Contains(name);
- }
-
- ///
- /// Creates an attach statement (i.e. button.Click += ButtonClick)
- /// or remove statement (i.e. button.Click -= ButtonClick)
- ///
- object CreateHandlerStatement(Expression eventExpression, string addRemoveOperator, Expression eventHandlerExpression)
- {
- CreateEventReferenceExpression(eventExpression);
- Append(" " + addRemoveOperator + " ");
- CreateDelegateCreateExpression(eventHandlerExpression);
- return null;
- }
-
- ///
- /// Converts an expression to a CodeEventReferenceExpression
- /// (i.e. the "button.Click" part of "button.Click += ButtonClick".
- ///
- object CreateEventReferenceExpression(Expression eventExpression)
- {
- // Create event reference.
- MemberReferenceExpression memberRef = eventExpression as MemberReferenceExpression;
- memberRef.AcceptVisitor(this, null);
- return null;
- }
-
- ///
- /// Creates an event handler expression
- /// (i.e. the "ButtonClick" part of "button.Click += ButtonClick")
- ///
- object CreateDelegateCreateExpression(Expression eventHandlerExpression)
- {
- // Create event handler expression.
- IdentifierExpression identifierExpression = eventHandlerExpression as IdentifierExpression;
- ObjectCreateExpression objectCreateExpression = eventHandlerExpression as ObjectCreateExpression;
- MemberReferenceExpression memberRefExpression = eventHandlerExpression as MemberReferenceExpression;
- if (identifierExpression != null) {
- Append("self." + identifierExpression.Identifier);
- } else if (memberRefExpression != null) {
- memberRefExpression.AcceptVisitor(this, null);
- } else if (objectCreateExpression != null) {
- CreateDelegateCreateExpression(objectCreateExpression.Parameters[0]);
- }
- return null;
- }
-
- ///
- /// Determines whether the assignment expression is actually an
- /// event handler attach statement.
- ///
- static bool IsAddEventHandler(AssignmentExpression assignmentExpression)
- {
- return (assignmentExpression.Op == AssignmentOperatorType.Add) &&
- (assignmentExpression.Left is MemberReferenceExpression);
- }
-
- ///
- /// Determines whether the assignment expression is actually an
- /// event handler remove statement.
- ///
- static bool IsRemoveEventHandler(AssignmentExpression assignmentExpression)
- {
- return (assignmentExpression.Op == AssignmentOperatorType.Subtract) &&
- (assignmentExpression.Left is MemberReferenceExpression);
- }
-
- void Append(string code)
- {
- codeBuilder.Append(code);
- }
-
- void AppendIndented(string code)
- {
- codeBuilder.AppendIndented(code);
- }
-
- void AppendIndentedPassStatement()
- {
- AppendIndentedLine("pass");
- }
-
- void AppendIndentedLine(string code)
- {
- codeBuilder.AppendIndentedLine(code);
- }
-
- void AppendLine()
- {
- codeBuilder.AppendLine();
- }
-
- void IncreaseIndent()
- {
- codeBuilder.IncreaseIndent();
- }
-
- void DecreaseIndent()
- {
- codeBuilder.DecreaseIndent();
- }
-
- void CreateConstructor(PythonConstructorInfo constructorInfo)
- {
- if (constructorInfo.Constructor != null) {
- AppendIndented("def __init__");
- AddParameters(constructorInfo.Constructor);
- methodParameters = constructorInfo.Constructor.Parameters;
- } else {
- AppendIndented("def __init__(self):");
- }
- AppendLine();
-
- // Add fields at start of constructor.
- IncreaseIndent();
- AppendDocstring(xmlDocComments);
- if (constructorInfo.Fields.Count > 0) {
- foreach (FieldDeclaration field in constructorInfo.Fields) {
- CreateFieldInitialization(field);
- }
- }
-
- if (!IsEmptyConstructor(constructorInfo.Constructor)) {
- constructorInfo.Constructor.Body.AcceptVisitor(this, null);
- AppendLine();
- } else if (constructorInfo.Fields.Count == 0) {
- AppendIndentedPassStatement();
- } else {
- AppendLine();
- }
-
- DecreaseIndent();
- }
-
- ///
- /// Returns true if the constructor has no statements in its body.
- ///
- static bool IsEmptyConstructor(ConstructorDeclaration constructor)
- {
- if (constructor != null) {
- return constructor.Body.Children.Count == 0;
- }
- return true;
- }
-
- ///
- /// Creates a field initialization statement.
- ///
- void CreateFieldInitialization(FieldDeclaration field)
- {
- foreach (VariableDeclaration variable in field.Fields) {
- // Ignore field if it has no initializer.
- if (FieldHasInitialValue(variable)) {
- AddTypeToArrayInitializerIfMissing(variable);
-
- string oldVariableName = variable.Name;
- variable.Name = "self._" + variable.Name;
- VisitVariableDeclaration(variable, null);
- variable.Name = oldVariableName;
- }
- }
- }
-
- void AddTypeToArrayInitializerIfMissing(VariableDeclaration variable)
- {
- ArrayCreateExpression arrayCreate = variable.Initializer as ArrayCreateExpression;
- if (IsArrayMissingTypeToCreate(arrayCreate)) {
- arrayCreate.CreateType = variable.TypeReference;
- }
- }
-
- bool IsArrayMissingTypeToCreate(ArrayCreateExpression arrayCreate)
- {
- if (arrayCreate != null) {
- return String.IsNullOrEmpty(arrayCreate.CreateType.Type);
- }
- return false;
- }
-
- ///
- /// Adds the method or constructor parameters.
- ///
- void AddParameters(ParametrizedNode method)
- {
- Append("(");
- List parameters = method.Parameters;
- if (parameters.Count > 0) {
- if (!IsStatic(method)) {
- Append("self, ");
- }
- for (int i = 0; i < parameters.Count; ++i) {
- if (i > 0) {
- Append(", ");
- }
- Append(parameters[i].ParameterName);
- }
- } else {
- if (!IsStatic(method)) {
- Append("self");
- }
- }
- Append("):");
- }
-
- bool IsStatic(ParametrizedNode method)
- {
- return (method.Modifier & Modifiers.Static) == Modifiers.Static;
- }
-
- ///
- /// Creates assignments of the form:
- /// i = 1
- ///
- object CreateSimpleAssignment(AssignmentExpression assignmentExpression, string op, object data)
- {
- assignmentExpression.Left.AcceptVisitor(this, data);
- Append(" " + op + " ");
- assignmentExpression.Right.AcceptVisitor(this, data);
- return null;
- }
-
- ///
- /// Creates the rhs of expressions such as:
- /// i = -1
- /// i = +1
- ///
- object CreateUnaryOperatorStatement(string op, Expression expression)
- {
- Append(op);
- expression.AcceptVisitor(this, null);
- return null;
- }
-
- ///
- /// Converts a switch case statement to an if/elif/else in Python.
- ///
- /// This contains the item being tested in the switch.
- /// This contains the switch section currently being converted.
- /// True if the section is the first in the switch. If true then
- /// an if statement will be generated, otherwise an elif will be generated.
- void CreateSwitchCaseCondition(Expression switchExpression, SwitchSection section, bool firstSection)
- {
- bool firstLabel = true;
- foreach (CaseLabel label in section.SwitchLabels) {
- if (firstLabel) {
- if (label.IsDefault) {
- // Create else condition.
- AppendIndented("else");
- } else if (firstSection) {
- // Create if condition.
- AppendIndented(String.Empty);
- CreateSwitchCaseCondition("if ", switchExpression, label);
- } else {
- // Create elif condition.
- AppendIndented(String.Empty);
- CreateSwitchCaseCondition("elif ", switchExpression, label);
- }
- } else {
- CreateSwitchCaseCondition(" or ", switchExpression, label);
- }
- firstLabel = false;
- }
-
- Append(":");
- AppendLine();
- }
-
- ///
- /// Creates the switch test condition
- ///
- /// This is a string which is either "if ", "elif ", "else " or " or ".
- void CreateSwitchCaseCondition(string prefix, Expression switchExpression, CaseLabel label)
- {
- Append(prefix);
- switchExpression.AcceptVisitor(this, null);
- Append(" == ");
- label.Label.AcceptVisitor(this, null);
- }
-
- ///
- /// Creates the statements inside a switch case statement.
- ///
- void CreateSwitchCaseBody(SwitchSection section)
- {
- int statementsAdded = 0;
- foreach (INode node in section.Children) {
- if (node is BreakStatement) {
- // ignore.
- } else {
- statementsAdded++;
- node.AcceptVisitor(this, null);
- }
- }
-
- // Check for empty body.
- if (statementsAdded == 0) {
- AppendIndentedLine("pass");
- }
- }
-
- ///
- /// Gets the supported language either C# or VB.NET
- ///
- static SupportedLanguage GetSupportedLanguage(string fileName)
- {
- string extension = Path.GetExtension(fileName.ToLowerInvariant());
- if (extension == ".vb") {
- return SupportedLanguage.VBNet;
- }
- return SupportedLanguage.CSharp;
- }
-
- ///
- /// Saves the method declaration if it is a main entry point.
- ///
- void SaveMethodIfMainEntryPoint(MethodDeclaration method)
- {
- if (method.Name == "Main") {
- entryPointMethods.Add(method);
- }
- }
-
- ///
- /// Returns true if the object being created is a generic.
- ///
- static bool IsGenericType(ObjectCreateExpression expression)
- {
- return expression.CreateType.GenericTypes.Count > 0;
- }
-
- ///
- /// Appends the types used when creating a generic surrounded by square brackets.
- ///
- void AppendGenericTypes(ObjectCreateExpression expression)
- {
- Append("[");
- List typeRefs = expression.CreateType.GenericTypes;
- for (int i = 0; i < typeRefs.Count; ++i) {
- if (i != 0) {
- Append(", ");
- }
- TypeReference typeRef = typeRefs[i];
- if (typeRef.IsArrayType) {
- Append("Array[" + GetTypeName(typeRef) + "]");
- } else {
- Append(GetTypeName(typeRef));
- }
- }
- Append("]");
- }
-
- ///
- /// If the type is String or Int32 then it returns "str" and "int".
- ///
- /// If the type is a keyword (e.g. uint) then the TypeRef.Type returns
- /// the full type name. It returns the short type name if the type is not a keyword. So
- /// this method will strip the namespace from the name.
- ///
- string GetTypeName(TypeReference typeRef)
- {
- string name = typeRef.Type;
- if (name == typeof(String).FullName) {
- return "str";
- } else if ((name == typeof(int).FullName) || ((name == typeof(int).Name))) {
- return "int";
- } else if (typeRef.IsKeyword) {
- // Remove namespace from type name.
- int index = name.LastIndexOf('.');
- if (index > 0) {
- return name.Substring(index + 1);
- }
- }
- return name;
- }
-
- ///
- /// Gets the type name that defines the method.
- ///
- static string GetTypeName(MethodDeclaration methodDeclaration)
- {
- TypeDeclaration type = methodDeclaration.Parent as TypeDeclaration;
- return type.Name;
- }
-
- void AppendMultilineComment(Comment comment)
- {
- string[] lines = comment.CommentText.Split(new char[] {'\n'});
- for (int i = 0; i < lines.Length; ++i) {
- string line = "# " + lines[i].Trim();
- if ((i == 0) && !comment.CommentStartsLine) {
- codeBuilder.AppendToPreviousLine(" " + line);
- } else {
- AppendIndentedLine(line);
- }
- }
- }
-
- void AppendSingleLineComment(Comment comment)
- {
- if (comment.CommentStartsLine) {
- codeBuilder.AppendIndentedLine("#" + comment.CommentText);
- } else {
- codeBuilder.AppendToPreviousLine(" #" + comment.CommentText);
- }
- }
-
- void AppendDocstring(List xmlDocComments)
- {
- if (xmlDocComments.Count > 1) {
- // Multiline docstring.
- for (int i = 0; i < xmlDocComments.Count; ++i) {
- string line = xmlDocComments[i].CommentText;
- if (i == 0) {
- AppendIndented(Docstring);
- } else {
- AppendIndented(String.Empty);
- }
- Append(line);
- AppendLine();
- }
- AppendIndentedLine(Docstring);
- } else if (xmlDocComments.Count == 1) {
- // Single line docstring.
- AppendIndentedLine(Docstring + xmlDocComments[0].CommentText + Docstring);
- }
- }
-
- ///
- /// Returns true if the node is a type declaration or a method since these can have
- /// python docstrings.
- ///
- bool SupportsDocstring(INode node)
- {
- return (node is TypeDeclaration) || (node is MethodDeclaration) || (node is ConstructorDeclaration);
- }
-
- void AppendPropertyDecorator(PropertyDeclaration propertyDeclaration)
- {
- string propertyName = propertyDeclaration.Name;
- AppendIndented(propertyName);
- Append(" = property(");
-
- bool addedParameter = false;
- if (propertyDeclaration.HasGetRegion) {
- Append("fget=get_" + propertyName);
- addedParameter = true;
- }
-
- if (propertyDeclaration.HasSetRegion) {
- if (addedParameter) {
- Append(", ");
- }
- Append("fset=set_" + propertyName);
- }
- Append(")");
- AppendLine();
- }
-
- void AppendBaseTypes(List baseTypes)
- {
- Append("(");
- if (baseTypes.Count == 0) {
- Append("object");
- } else {
- for (int i = 0; i < baseTypes.Count; ++i) {
- TypeReference typeRef = baseTypes[i];
- if (i > 0) {
- Append(", ");
- }
- Append(GetTypeName(typeRef));
- }
- }
- Append("):");
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonAstWalker.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonAstWalker.cs
deleted file mode 100644
index b2b27952a97..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonAstWalker.cs
+++ /dev/null
@@ -1,159 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using Microsoft.Scripting;
-using System;
-using System.Collections.Generic;
-using System.IO;
-
-using ICSharpCode.SharpDevelop.Dom;
-using IronPython.Compiler;
-using IronPython.Compiler.Ast;
-using IronPython.Runtime;
-
-namespace ICSharpCode.PythonBinding
-{
- ///
- /// Walks the python parse tree.
- ///
- public class PythonAstWalker : PythonWalker
- {
- PythonCompilationUnit compilationUnit;
- IClass currentClass;
- PythonModule module;
-
- ///
- /// All classes in a file take the namespace of the filename.
- ///
- public PythonAstWalker(IProjectContent projectContent, string fileName)
- {
- compilationUnit = new PythonCompilationUnit(projectContent, fileName);
- }
-
- ///
- /// Returns the compilation unit created after the Walk method
- /// has been called.
- ///
- public ICompilationUnit CompilationUnit {
- get { return compilationUnit; }
- }
-
- ///
- /// Walks the python statement returned from the parser.
- ///
- public void Walk(Statement statement)
- {
- statement.Walk(this);
- }
-
- public override bool Walk(ClassDefinition classDefinition)
- {
- if (classDefinition.Parent != null) {
- PythonClass c = new PythonClass(compilationUnit, classDefinition);
- WalkClassBody(c, classDefinition.Body);
- }
- return false;
- }
-
- void WalkClassBody(IClass c, Statement classBody)
- {
- currentClass = c;
- classBody.Walk(this);
- currentClass = null;
- }
-
- public override bool Walk(FunctionDefinition functionDefinition)
- {
- if (functionDefinition.Body == null) {
- return false;
- }
-
- IClass c = GetClassBeingWalked();
-
- PythonMethodDefinition methodDefinition = new PythonMethodDefinition(functionDefinition);
- PythonMethod method = methodDefinition.CreateMethod(c);
- if (method is PythonConstructor) {
- FindFields(c, functionDefinition);
- }
- return false;
- }
-
- ///
- /// If the current class is null then create a module so a method outside of a class can be
- /// parsed.
- ///
- IClass GetClassBeingWalked()
- {
- if (currentClass == null) {
- // Walking a method outside a class.
- CreateModule();
- return module;
- }
- return currentClass;
- }
-
- ///
- /// Creates the module which will act as a class so it can hold any methods defined in the module.
- ///
- void CreateModule()
- {
- if (module == null) {
- module = new PythonModule(compilationUnit);
- }
- }
-
- void FindFields(IClass c, FunctionDefinition functionDefinition)
- {
- PythonClassFields fields = new PythonClassFields(functionDefinition);
- fields.AddFields(c);
- }
-
- ///
- /// Walks an import statement and adds it to the compilation unit's
- /// Usings.
- ///
- public override bool Walk(ImportStatement node)
- {
- PythonImport import = new PythonImport(compilationUnit.ProjectContent, node);
- compilationUnit.UsingScope.Usings.Add(import);
- return false;
- }
-
- public override bool Walk(FromImportStatement node)
- {
- PythonFromImport import = new PythonFromImport(compilationUnit.ProjectContent, node);
- compilationUnit.UsingScope.Usings.Add(import);
- return false;
- }
-
- public override bool Walk(AssignmentStatement node)
- {
- if (currentClass != null) {
- FindProperty(node);
- return false;
- }
- return base.Walk(node);
- }
-
- void FindProperty(AssignmentStatement node)
- {
- PythonPropertyAssignment propertyAssignment = new PythonPropertyAssignment(node);
- propertyAssignment.CreateProperty(currentClass);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonBuiltInModuleMemberName.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonBuiltInModuleMemberName.cs
deleted file mode 100644
index 93ef685e7e5..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonBuiltInModuleMemberName.cs
+++ /dev/null
@@ -1,37 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-
-namespace ICSharpCode.PythonBinding
-{
- public class PythonBuiltInModuleMemberName : MemberName
- {
- public const string PythonBuiltInModuleName = "__builtin__";
-
- public PythonBuiltInModuleMemberName(string memberName)
- : base(PythonBuiltInModuleName, memberName)
- {
- }
-
- public static bool IsBuiltInModule(string name)
- {
- return name == PythonBuiltInModuleName;
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonClass.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonClass.cs
deleted file mode 100644
index a9ca0aa2848..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonClass.cs
+++ /dev/null
@@ -1,106 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using ICSharpCode.SharpDevelop.Dom;
-using IronPython.Compiler.Ast;
-
-namespace ICSharpCode.PythonBinding
-{
- public class PythonClass : DefaultClass
- {
- public PythonClass(ICompilationUnit compilationUnit, ClassDefinition classDefinition)
- : base(compilationUnit, String.Empty)
- {
- GetFullyQualifiedName(classDefinition);
- GetClassRegions(classDefinition);
- AddBaseTypes(classDefinition.Bases);
-
- compilationUnit.Classes.Add(this);
- }
-
- ///
- /// Adds the namespace to the class name taken from the class definition.
- ///
- void GetFullyQualifiedName(ClassDefinition classDefinition)
- {
- string ns = CompilationUnit.UsingScope.NamespaceName;
- FullyQualifiedName = String.Format("{0}.{1}", ns, classDefinition.Name);
- }
-
- void GetClassRegions(ClassDefinition classDefinition)
- {
- GetRegion(classDefinition);
- BodyRegion = PythonMethodOrClassBodyRegion.GetBodyRegion(classDefinition);
- }
-
- ///
- /// Gets the region of the scope statement (ClassDefinition).
- ///
- ///
- /// A class region includes the body.
- ///
- void GetRegion(ScopeStatement statement)
- {
- Region = new DomRegion(statement.Start.Line, statement.Start.Column, statement.End.Line, statement.End.Column);
- }
-
- ///
- /// Looks for any base types for the class defined in the
- /// list of expressions and adds them to the class.
- ///
- void AddBaseTypes(IList baseTypes)
- {
- foreach (Expression baseTypeExpression in baseTypes) {
- AddBaseType(baseTypeExpression);
- }
- }
-
- void AddBaseType(Expression baseTypeExpression)
- {
- NameExpression nameExpression = baseTypeExpression as NameExpression;
- MemberExpression memberExpression = baseTypeExpression as MemberExpression;
- if (nameExpression != null) {
- AddBaseType(nameExpression.Name);
- } else if (memberExpression != null) {
- AddBaseType(memberExpression);
- }
- }
-
- ///
- /// Adds the named base type to the class.
- ///
- void AddBaseType(string name)
- {
- IReturnType returnType = CreateSearchClassReturnType(name);
- BaseTypes.Add(returnType);
- }
-
- void AddBaseType(MemberExpression memberExpression)
- {
- string name = PythonControlFieldExpression.GetMemberName(memberExpression);
- AddBaseType(name);
- }
-
- SearchClassReturnType CreateSearchClassReturnType(string name)
- {
- return new SearchClassReturnType(ProjectContent, this, 0, 0, name, 0);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonClassFields.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonClassFields.cs
deleted file mode 100644
index 7570e357400..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonClassFields.cs
+++ /dev/null
@@ -1,79 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using ICSharpCode.SharpDevelop.Dom;
-using IronPython.Compiler.Ast;
-
-namespace ICSharpCode.PythonBinding
-{
- public class PythonClassFields : PythonWalker
- {
- FunctionDefinition functionDefinition;
- IClass declaringType;
- List fieldNamesAdded;
-
- public PythonClassFields(FunctionDefinition functionDefinition)
- {
- this.functionDefinition = functionDefinition;
- }
-
- public void AddFields(IClass declaringType)
- {
- this.declaringType = declaringType;
- fieldNamesAdded = new List();
-
- functionDefinition.Body.Walk(this);
- }
-
- public override bool Walk(AssignmentStatement node)
- {
- string fieldName = GetFieldName(node);
- AddFieldToDeclaringType(fieldName);
- return false;
- }
-
- string GetFieldName(AssignmentStatement node)
- {
- string[] memberNames = PythonControlFieldExpression.GetMemberNames(node.Left[0] as MemberExpression);
- return GetFieldName(memberNames);
- }
-
- string GetFieldName(string[] memberNames)
- {
- if (memberNames.Length > 1) {
- if (PythonSelfResolver.IsSelfExpression(memberNames[0])) {
- return memberNames[1];
- }
- }
- return null;
- }
-
- void AddFieldToDeclaringType(string fieldName)
- {
- if (fieldName != null) {
- if (!fieldNamesAdded.Contains(fieldName)) {
- DefaultField field = new DefaultField(declaringType, fieldName);
- declaringType.Fields.Add(field);
- fieldNamesAdded.Add(fieldName);
- }
- }
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonClassMembers.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonClassMembers.cs
deleted file mode 100644
index d75d4bc47a7..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonClassMembers.cs
+++ /dev/null
@@ -1,54 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using ICSharpCode.SharpDevelop.Dom;
-
-namespace ICSharpCode.PythonBinding
-{
- public class PythonClassMembers
- {
- List members;
-
- public PythonClassMembers(IClass declaringType)
- {
- members = GetMembers(declaringType);
- }
-
- public IMember FindMember(string memberName)
- {
- foreach (IMember member in members) {
- if (member.Name == memberName) {
- return member;
- }
- }
- return null;
- }
-
- List GetMembers(IClass declaringType)
- {
- List members = new List();
- members.AddRange(declaringType.Events);
- members.AddRange(declaringType.Fields);
- members.AddRange(declaringType.Properties);
- members.AddRange(declaringType.Methods);
- return members;
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonClassResolver.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonClassResolver.cs
deleted file mode 100644
index 69e0fc0109a..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonClassResolver.cs
+++ /dev/null
@@ -1,119 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using ICSharpCode.SharpDevelop.Dom;
-
-namespace ICSharpCode.PythonBinding
-{
- public class PythonClassResolver : IPythonResolver
- {
- PythonResolverContext resolverContext;
-
- public ResolveResult Resolve(PythonResolverContext resolverContext)
- {
- IClass matchingClass = GetClass(resolverContext);
- if (matchingClass != null) {
- return CreateTypeResolveResult(matchingClass);
- }
- return null;
- }
-
- public IClass GetClass(PythonResolverContext resolverContext)
- {
- string name = resolverContext.Expression;
- return GetClass(resolverContext, name);
- }
-
- public IClass GetClass(PythonResolverContext resolverContext, string name)
- {
- this.resolverContext = resolverContext;
-
- if (String.IsNullOrEmpty(name)) {
- return null;
- }
-
- IClass matchedClass = resolverContext.GetClass(name);
- if (matchedClass != null) {
- return matchedClass;
- }
-
- matchedClass = GetClassFromImportedNames(name);
- if (matchedClass != null) {
- return matchedClass;
- }
-
- matchedClass = GetClassFromNamespaceThatImportsEverything(name);
- if (matchedClass != null) {
- return matchedClass;
- }
-
- return GetClassFromDottedImport(name);
- }
-
- TypeResolveResult CreateTypeResolveResult(IClass c)
- {
- return new TypeResolveResult(null, null, c);
- }
-
- IClass GetClassFromImportedNames(string name)
- {
- string moduleName = resolverContext.GetModuleForImportedName(name);
- if (moduleName != null) {
- name = resolverContext.UnaliasImportedName(name);
- string fullyQualifiedName = GetQualifiedClassName(moduleName, name);
- return resolverContext.GetClass(fullyQualifiedName);
- }
- return null;
- }
-
- string GetQualifiedClassName(string namespacePrefix, string className)
- {
- return namespacePrefix + "." + className;
- }
-
- IClass GetClassFromNamespaceThatImportsEverything(string name)
- {
- foreach (string moduleName in resolverContext.GetModulesThatImportEverything()) {
- string fullyQualifiedName = GetQualifiedClassName(moduleName, name);
- IClass matchedClass = resolverContext.GetClass(fullyQualifiedName);
- if (matchedClass != null) {
- return matchedClass;
- }
- }
- return null;
- }
-
- IClass GetClassFromDottedImport(string name)
- {
- string moduleName = resolverContext.FindStartOfDottedModuleNameInImports(name);
- if (moduleName != null) {
- string fullyQualifiedName = UnaliasClassName(moduleName, name);
- return resolverContext.GetClass(fullyQualifiedName);
- }
- return null;
- }
-
- string UnaliasClassName(string moduleName, string fullClassName)
- {
- string actualModuleName = resolverContext.UnaliasImportedModuleName(moduleName);
- string lastPartOfClassName = fullClassName.Substring(moduleName.Length + 1);
- return GetQualifiedClassName(actualModuleName, lastPartOfClassName);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonCodeBuilder.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonCodeBuilder.cs
deleted file mode 100644
index e239882f3cb..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonCodeBuilder.cs
+++ /dev/null
@@ -1,56 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.ComponentModel;
-using System.Text;
-using ICSharpCode.Scripting;
-
-namespace ICSharpCode.PythonBinding
-{
- public class PythonCodeBuilder : ScriptingCodeBuilder
- {
- bool insertedCreateComponentsContainer;
-
- public PythonCodeBuilder()
- {
- }
-
- public PythonCodeBuilder(int initialIndent)
- : base(initialIndent)
- {
- }
-
- ///
- /// Inserts the following line of code before all the other lines of code:
- ///
- /// "self._components = System.ComponentModel.Container()"
- ///
- /// This line will only be inserted once. Multiple calls to this method will only result in one
- /// line of code being inserted.
- ///
- public void InsertCreateComponentsContainer()
- {
- if (!insertedCreateComponentsContainer) {
- string text = String.Format("self._components = {0}()", typeof(Container).FullName);
- InsertIndentedLine(text);
- insertedCreateComponentsContainer = true;
- }
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonCodeCompletionBinding.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonCodeCompletionBinding.cs
deleted file mode 100644
index f8f5fd46df6..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonCodeCompletionBinding.cs
+++ /dev/null
@@ -1,69 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using ICSharpCode.SharpDevelop;
-using ICSharpCode.SharpDevelop.Dom;
-using ICSharpCode.SharpDevelop.Editor;
-using ICSharpCode.SharpDevelop.Editor.CodeCompletion;
-using System.Collections.Generic;
-
-namespace ICSharpCode.PythonBinding
-{
- public class PythonCodeCompletionBinding : DefaultCodeCompletionBinding
- {
- public PythonCodeCompletionBinding()
- {
- base.insightHandler = new PythonInsightWindowHandler();
- }
-
- ///
- /// Shows the code completion window if the keyword is handled.
- ///
- /// The keyword string.
- /// true if the keyword is handled; otherwise false.
- public override bool HandleKeyword(ITextEditor editor, string word)
- {
- if (word != null) {
- switch (word.ToLowerInvariant()) {
- case "import":
- case "from":
- return HandleImportKeyword(editor);
- }
- }
- return false;
- }
-
- bool HandleImportKeyword(ITextEditor editor)
- {
- AbstractCompletionItemProvider provider = CreateKeywordCompletionItemProvider();
- ShowCodeCompletionWindow(provider, editor);
- return true;
- }
-
- protected virtual AbstractCompletionItemProvider CreateKeywordCompletionItemProvider()
- {
- return new PythonCodeCompletionItemProvider();
- }
-
- protected virtual void ShowCodeCompletionWindow(AbstractCompletionItemProvider completionItemProvider, ITextEditor editor)
- {
- completionItemProvider.ShowCompletion(editor);
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonCodeCompletionItemProvider.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonCodeCompletionItemProvider.cs
deleted file mode 100644
index 5c282abe2e2..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonCodeCompletionItemProvider.cs
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using ICSharpCode.SharpDevelop.Editor.CodeCompletion;
-
-namespace ICSharpCode.PythonBinding
-{
- public class PythonCodeCompletionItemProvider : CodeCompletionItemProvider
- {
- protected override DefaultCompletionItemList CreateCompletionItemList()
- {
- return new PythonCompletionItemList();
- }
- }
-}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonCodeDeserializer.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonCodeDeserializer.cs
deleted file mode 100644
index 8ac4ad8b333..00000000000
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonCodeDeserializer.cs
+++ /dev/null
@@ -1,253 +0,0 @@
-// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy of this
-// software and associated documentation files (the "Software"), to deal in the Software
-// without restriction, including without limitation the rights to use, copy, modify, merge,
-// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
-// to whom the Software is furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in all copies or
-// substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
-// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using System.ComponentModel.Design;
-using System.Drawing;
-using System.Reflection;
-
-using ICSharpCode.Scripting;
-using IronPython.Compiler;
-using IronPython.Compiler.Ast;
-
-namespace ICSharpCode.PythonBinding
-{
- ///
- /// Creates objects from python code.
- ///
- public class PythonCodeDeserializer
- {
- IComponentCreator componentCreator;
-
- public PythonCodeDeserializer(IComponentCreator componentCreator)
- {
- this.componentCreator = componentCreator;
- }
-
- ///
- /// Gets the arguments passed to the call expression.
- ///
- public List