Seite 1 von 1

Phythonscript zur Regelprüfung..

Verfasst: Dienstag 15. Dezember 2009, 15:22
von zdoktorov
Hallo.

Also ich hab das folgende Problem.
Will ein Script schreiben, der prüfen soll, ob es in einem C ++ Programm die VAriablen in der Klassen nur private Visibility haben.
Der Script muss nach public und protected variablen in einer Klasse durchsuchen und Fehlermeldung ausgeben wenn die gefunden hat.bzw "gefunden ...protected Var und ... public var"
Hat jemand von euch wie ish anfangen soll.
Vorschläge werde gerne annehmen,.

Verfasst: Dienstag 15. Dezember 2009, 15:50
von Masaru
Hallo auch

Anfangen könntest Du mit einem Source-File Sammler (*.cpp) und einem Mechanismus zum Einlesen einer solchen C++ Source-File.

Dann könntest Du letzteres nach und nach in einen Parser umwandeln, der dann CPP-Klassen und CPP-Variablen in eine verchachtelten Dictionary Struktur auflöst.
Du beginnst initial mit einfachen Strings und erweiterst danach diese in separate Klassen für die CPP-Klassen und CPP-Variablen.

Final parst Du dann für jede Variable den Visibilty-Identifier mit aus und kannst dann final über eine verschachtelte Iteration Deiner Strukturen Dir einen Report/Warnung/Info/was-auch-immer ausgeben lassen: voilla.

Du kannst ja erst einmal anfangen und dann Dein Skript/Code via http://paste.pocoo.org/ ausgelagert hier präsentieren, falls Du nicht weiterkommst.

>>Masaru<<

Verfasst: Dienstag 15. Dezember 2009, 21:05
von CM
Oder Du nutzt mit pygccxml ein existierendes Paket und bohrst das ein wenig auf, um an die gewünschte Information zu kommen. Ggf. kann man auch bei den Entwicklern um Hilfestellung beten.
Ist für den Start sicher aufwendiger, aber mächtiger, wenn es darum geht die Aufgabenstellung auszuweiten.

HTH
Christian

Verfasst: Mittwoch 16. Dezember 2009, 08:09
von Leonidas
CM hat geschrieben:Ist für den Start sicher aufwendiger, aber mächtiger, wenn es darum geht die Aufgabenstellung auszuweiten.
Und zuverlässiger sowieso:

Code: Alles auswählen

#define private public

Verfasst: Mittwoch 16. Dezember 2009, 09:16
von CM
:D Entwickler, die so etwas im Code verstecken, gehören gerädert, gevierteilt, in die Eiserne Jungfrau gesteckt, mit Teer übergossen und an den Pranger gestellt - nicht notwendigerweise in dieser Reihenfolge. Na ja, ich bin ja kein Unmensch: Vorsatz sollte schon erkennbar sein. ;-)

Verfasst: Mittwoch 16. Dezember 2009, 10:09
von Pekh
CM hat geschrieben::D Entwickler, die so etwas im Code verstecken, gehören gerädert, gevierteilt, in die Eiserne Jungfrau gesteckt, mit Teer übergossen und an den Pranger gestellt - nicht notwendigerweise in dieser Reihenfolge. Na ja, ich bin ja kein Unmensch: Vorsatz sollte schon erkennbar sein. ;-)
Vorsätzlich handeln also alle Programmierer, die ihren Code nicht nur aus verschiedenen Quellen zusammenkopieren?

Verfasst: Mittwoch 16. Dezember 2009, 10:20
von CM
CM hat geschrieben:Entwickler, die so etwas im Code verstecken, ...

Verfasst: Mittwoch 16. Dezember 2009, 21:24
von Trundle