Menu

Diff of /trunk/python/python.interface.php [000000] .. [r42]  Maximize  Restore

Switch to side-by-side view

--- a
+++ b/trunk/python/python.interface.php
@@ -0,0 +1,73 @@
+<?php
+require_once __DIR__.'/python.parser.php';
+
+class lang_python_interface extends lang_python_parser {
+
+	public static function python_print($a) {
+		if (is_object($a)) {		
+			$n=$a->name;global ${$n};echo ${$n};	
+		} else {
+			echo $a;
+		}
+	}
+
+	public static function python_command($cmd,$parms) {
+		switch($cmd) {
+			case "print": echo $parms; break;
+		}
+	}
+
+	public static function python_for() {
+		echo "START-FOR";
+	}
+
+	public static function python_for_end() {
+		echo "END-FOR";
+	}
+
+	public static function python_assign($a,$b,$c) {
+		if ($b=="=") {
+			if (is_object($a)) {
+				if (is_object($c)) {			
+
+				} else {
+					$n=$a->name;global ${$n};${$n}=$c;
+				}
+			}
+		}	
+	}
+
+	public static function python_list($v) {
+		echo "List: ";
+		var_dump($v);
+
+		return 1;
+	}
+
+	public static function python_mod($a,$b){return is_integer($a)?$a%$b:$a;}
+
+	public static function python_class_start($a) {
+		$name = $a->name;
+		var_dump($a);	
+	}
+
+	public static function python_class_end($a) {
+		$name = $a->name;
+		$classfile = __PHPYTHON_CACHE_PATH__.$name.'.class';
+		$classcode = '<?php
+		class '.$name.' {  
+
+		}';
+		file_put_contents($classfile,$classcode);
+		require_once($classfile);
+	}
+
+	public static function python_def_start($a) {
+		var_dump($a);
+	}
+
+	public static function python_def_end($a) {
+
+	}
+	
+}
\ No newline at end of file