summaryrefslogtreecommitdiff
path: root/framework/interfaces.php
diff options
context:
space:
mode:
authorxue <>2006-04-07 03:32:11 +0000
committerxue <>2006-04-07 03:32:11 +0000
commit370c682479edb2fd3f40ee701f7bb4ef088e8283 (patch)
treed5fee37ac2b40a3a984bf860bce09562a8532040 /framework/interfaces.php
parent8b7717c06b86262d188827fb26a4bfb2e480c256 (diff)
Breaking change!! Optimized the representation and evaluation of template expression, statements and databind tags.
Diffstat (limited to 'framework/interfaces.php')
-rw-r--r--framework/interfaces.php38
1 files changed, 38 insertions, 0 deletions
diff --git a/framework/interfaces.php b/framework/interfaces.php
index ca5c77bb..2a407696 100644
--- a/framework/interfaces.php
+++ b/framework/interfaces.php
@@ -242,4 +242,42 @@ interface ICacheDependency
public function getHasChanged();
}
+/**
+ * IRenderable interface.
+ *
+ * This interface must be implemented by classes that can be rendered
+ * to end-users.
+ *
+ * @author Qiang Xue <qiang.xue@gmail.com>
+ * @version $Revision: $ $Date: $
+ * @package System
+ * @since 3.0
+ */
+interface IRenderable
+{
+ /**
+ * Renders the component to end-users.
+ * @param ITextWriter writer for the rendering purpose
+ */
+ public function render($writer);
+}
+
+/**
+ * IBindable interface.
+ *
+ * This interface must be implemented by classes that are capable of performing databinding.
+ *
+ * @author Qiang Xue <qiang.xue@gmail.com>
+ * @version $Revision: $ $Date: $
+ * @package System
+ * @since 3.0
+ */
+interface IBindable
+{
+ /**
+ * Performs databinding.
+ */
+ public function dataBind();
+}
+
?> \ No newline at end of file