Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

some big refactoring

  • Loading branch information...
commit 3ef4ba3caf00dbfb96db3e4327aaddbf9b933492 1 parent 16d69e3
francescoagati authored
View
22 haxe/BaseApi.hx
@@ -1,22 +0,0 @@
-import haxe.Template;
-
-class BaseApi {
-
- public var view:Dynamic;
- public var layout:Dynamic;
- public var output:String;
-
-
- public function render(data:Dynamic) {
-
- var str = haxe.Resource.getString(view[0]);
- var t = new haxe.Template(str);
- output = t.execute(data);
-
- }
-
- public function renderString(s:String) {
- output=s;
- }
-
-}
View
2  haxe/Main.hx → haxe/Drupal/Main.hx
@@ -1,4 +1,4 @@
-
+package drupal;
class Main {
View
6 haxe/Api.hx → haxe/Drupal/api/Api.hx
@@ -1,8 +1,12 @@
+package drupal.api;
+
import haxe.web.Dispatch;
class Api extends BaseApi {
- public function new() {}
+ public function new() {
+ super();
+ }
@view('user')
function doUsers(d:Dispatch,id:Int) {
View
25 haxe/Drupal/api/BaseApi.hx
@@ -0,0 +1,25 @@
+package drupal.api;
+
+import haxe.Template;
+import drupal.view.IView;
+import drupal.view.ViewHaxeTemplate;
+class BaseApi implements IApi {
+
+ public var view:String;
+ public var layout:String;
+ public var output:String;
+ public var view_render:IView;
+
+ public function new() {
+ }
+
+ public function render(data:Dynamic) {
+ view_render= new ViewHaxeTemplate(view);
+ output=view_render.render(data);
+ }
+
+ public function renderString(s:String) {
+ output=s;
+ }
+
+}
View
4 haxe/Drupal/api/IApi.hx
@@ -0,0 +1,4 @@
+package drupal.api;
+
+interface IApi {}
+
View
27 haxe/Drupal/dispatcher/DrupalDispatcher.hx
@@ -0,0 +1,27 @@
+package drupal.dispatcher;
+using StringTools;
+
+import drupal.dispatcher.ServiceDispatcher;
+
+class DrupalDispatcher extends UrlDispatcher {
+
+
+ override public function setUrl(base_url:String) {
+ url=untyped __php__("$_GET['q']");
+ url=url.replace(base_url + "/", "");
+ url=base_url;
+ }
+
+ public function new(base_url:String) {
+ super(base_url);
+ setUrl(base_url);
+ dispatch();
+ }
+
+ public static function main() {
+
+ var d=new DrupalDispatcher("/users/5");
+ trace(d.getOutput());
+ }
+
+}
View
9 haxe/Drupal/dispatcher/IDispatcher.hx
@@ -0,0 +1,9 @@
+package drupal.dispatcher;
+interface IDispatcher {
+
+ var url:String;
+ function setUrl(base_url:String):Void;
+ function dispatch():Void;
+ function getOutput():String;
+
+}
View
11 haxe/Drupal/dispatcher/ServiceDispatcher.hx
@@ -0,0 +1,11 @@
+package drupal.dispatcher;
+class ServiceDispatcher implements IDispatcher {
+
+ public var url:String;
+ public function setUrl(base_url:String):Void {}
+ public function dispatch():Void {}
+ public function getOutput():String {
+ return "";
+ }
+
+}
View
24 haxe/Drupal/dispatcher/TestDispatcher.hx
@@ -0,0 +1,24 @@
+package drupal.dispatcher;
+using StringTools;
+import drupal.dispatcher.DrupalDispatcher;
+
+class TestDispatcher extends UrlDispatcher {
+
+
+ override public function setUrl(base_url:String) {
+ url=base_url;
+ }
+
+ public function new(base_url:String) {
+ super(base_url);
+ setUrl(base_url);
+ dispatch();
+ }
+
+ public static function main() {
+
+ var d=new TestDispatcher("/users/5");
+ trace(d.getOutput());
+ }
+
+}
View
36 haxe/Drupal/dispatcher/UrlDispatcher.hx
@@ -0,0 +1,36 @@
+package drupal.dispatcher;
+
+import haxe.web.Dispatch;
+import drupal.view.ViewHaxeTemplate;
+import drupal.api.Api;
+
+class UrlDispatcher implements IDispatcher {
+
+ public var url:String;
+ var api:Api;
+
+ public function setUrl(base_url:String) {}
+
+ public function dispatch() {
+
+ var d = new Dispatch(url,new Hash());
+ api=new Api();
+
+ d.onMeta=function(m,value) {
+ trace(value[0]);
+ if (m=="view") api.view=value[0];
+ if (m=="layout") api.layout=value[0];
+ };
+
+ trace(api.view);
+ d.dispatch(api);
+
+ }
+
+ public function new(base_url:String) {}
+
+ public function getOutput():String {
+ return api.output;
+ }
+
+}
View
5 haxe/Drupal/view/IView.hx
@@ -0,0 +1,5 @@
+package drupal.view;
+interface IView {
+ private var template:String;
+ public function render(data:Dynamic):String;
+}
View
18 haxe/Drupal/view/ViewHaxeTemplate.hx
@@ -0,0 +1,18 @@
+package drupal.view;
+class ViewHaxeTemplate implements IView {
+
+ private var template:String;
+
+ public function new(template:String) {
+ this.template=template;
+ }
+
+ public function render(data:Dynamic):String {
+
+ var str = haxe.Resource.getString(template);
+ var t = new haxe.Template(str);
+ return t.execute(data);
+
+ }
+
+}
View
38 haxe/DrupalDispatcher.hx
@@ -1,38 +0,0 @@
-import haxe.web.Dispatch;
-using StringTools;
-
-class DrupalDispatcher {
-
- var url:String;
- var api:Api;
-
- function setUrl(base_url:String) {
- url=untyped __php__("$_GET['q']");
- url=url.replace(base_url + "/", "");
- }
-
- function dispatch() {
-
- var d = new Dispatch(url,new Hash());
- api=new Api();
-
- d.onMeta=function(m,value) {
- if (m=="view") api.view=value;
- if (m=="layout") api.layout=value;
- };
- d.dispatch(api);
-
- }
-
- public function new(base_url:String) {
- setUrl(base_url);
- dispatch();
- }
-
- public function getOutput():String {
- return api.output;
- }
-
- public static function main() {}
-
-}
View
BIN  haxe/Root.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
6 haxe/build.hxml
@@ -1,4 +1,6 @@
--main DrupalDispatcher
+-main drupal.dispatcher.TestDispatcher
-php www
+-cmd php www/index.php
-resource views/user.tpl@user
--resource views/users.tpl@users
+-resource views/users.tpl@users
+-xml uml.xml
View
BIN  haxe/drupal.api.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  haxe/drupal.dispatcher.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  haxe/drupal.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  haxe/drupal.view.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  haxe/haxe._Template.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  haxe/haxe.io.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  haxe/haxe.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  haxe/haxe.rtti.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  haxe/haxe.web.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  haxe/php.io.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  haxe/php.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
2,471 haxe/uml.xml
@@ -0,0 +1,2471 @@
+<haxe>
+ <class path="Enum" params="T" file="/usr/lib/haxe/std/Enum.hx" extern="1"><haxe_doc>
+ An abstract type that represents an Enum.
+ See [Type] for the haXe Reflection API.
+</haxe_doc></class>
+ <typedef path="haxe.web.Config" params="" file="/usr/lib/haxe/std/haxe/web/Dispatch.hx" module="haxe.web.Dispatch"><a>
+ <rules><d/></rules>
+ <obj><d/></obj>
+</a></typedef>
+ <typedef path="haxe.web.Lock" params="T" file="/usr/lib/haxe/std/haxe/web/Dispatch.hx" module="haxe.web.Dispatch"><c path="haxe.web.Lock.T"/></typedef>
+ <enum path="haxe.web.MatchRule" params="" file="/usr/lib/haxe/std/haxe/web/Dispatch.hx" module="haxe.web.Dispatch">
+ <MRString/>
+ <MRSpod a="c:lock">
+ <c path="String"/>
+ <e path="Bool"/>
+ </MRSpod>
+ <MROpt a="r"><e path="haxe.web.MatchRule"/></MROpt>
+ <MRInt/>
+ <MRFloat/>
+ <MRDispatch/>
+ <MRBool/>
+ </enum>
+ <enum path="haxe.web.DispatchRule" params="" file="/usr/lib/haxe/std/haxe/web/Dispatch.hx" module="haxe.web.Dispatch">
+ <DRMult a="r"><c path="Array"><e path="haxe.web.MatchRule"/></c></DRMult>
+ <DRMeta a="r"><e path="haxe.web.DispatchRule"/></DRMeta>
+ <DRMatch a="r"><e path="haxe.web.MatchRule"/></DRMatch>
+ <DRArgs a="r:args:opt">
+ <e path="haxe.web.DispatchRule"/>
+ <c path="Array"><a>
+ <rule><e path="haxe.web.MatchRule"/></rule>
+ <opt><e path="Bool"/></opt>
+ <name><c path="String"/></name>
+</a></c>
+ <e path="Bool"/>
+ </DRArgs>
+ </enum>
+ <enum path="haxe.web.DispatchError" params="" file="/usr/lib/haxe/std/haxe/web/Dispatch.hx" module="haxe.web.Dispatch">
+ <DENotFound a="part"><c path="String"/></DENotFound>
+ <DEMissingParam a="p"><c path="String"/></DEMissingParam>
+ <DEMissing/>
+ <DEInvalidValue/>
+ </enum>
+ <class path="haxe.web.Dispatch" params="" file="/usr/lib/haxe/std/haxe/web/Dispatch.hx">
+ <GET_RULES static="1"><c path="Array"><c path="Array"><a>
+ <rule><e path="haxe.web.MatchRule"/></rule>
+ <opt><e path="Bool"/></opt>
+ <name><c path="String"/></name>
+</a></c></c></GET_RULES>
+ <extractConfig set="method" line="388" static="1"><f a="obj">
+ <d/>
+ <t path="haxe.web.Config"/>
+</f></extractConfig>
+ <parts><c path="Array"><c path="String"/></c></parts>
+ <params><c path="Hash"><c path="String"/></c></params>
+ <name><c path="String"/></name>
+ <obj><d/></obj>
+ <dispatch public="1" set="method"><f a="obj">
+ <a/>
+ <e path="Void"/>
+</f></dispatch>
+ <getParams public="1" set="method"><f a=""><d/></f></getParams>
+ <setParams public="1" set="method" line="98"><f a="p">
+ <c path="Hash"><c path="String"/></c>
+ <e path="Void"/>
+</f></setParams>
+ <onMeta public="1" set="dynamic" line="102"><f a="v:args">
+ <c path="String"/>
+ <t path="Null"><c path="Array"><d/></c></t>
+ <e path="Void"/>
+</f></onMeta>
+ <resolveName set="method" line="105"><f a="name">
+ <c path="String"/>
+ <c path="String"/>
+</f></resolveName>
+ <runtimeDispatch public="1" set="method" line="109"><f a="cfg">
+ <t path="haxe.web.Config"/>
+ <e path="Void"/>
+</f></runtimeDispatch>
+ <runtimeGetParams public="1" set="method" line="130"><f a="cfgIndex">
+ <c path="Int"/>
+ <d/>
+</f></runtimeGetParams>
+ <match set="method" line="136"><f a="v:r">
+ <c path="String"/>
+ <e path="haxe.web.MatchRule"/>
+ <d/>
+</f></match>
+ <checkParams set="method" line="175"><f a="params:opt">
+ <c path="Array"><a>
+ <rule><e path="haxe.web.MatchRule"/></rule>
+ <opt><e path="Bool"/></opt>
+ <name><c path="String"/></name>
+</a></c>
+ <e path="Bool"/>
+ <a/>
+</f></checkParams>
+ <loop set="method" line="189"><f a="args:r">
+ <c path="Array"><d/></c>
+ <e path="haxe.web.DispatchRule"/>
+ <e path="Void"/>
+</f></loop>
+ <new public="1" set="method" line="72"><f a="url:params">
+ <a><split set="null"><f a="">
+ <c path="String"/>
+ <c path="Array"><c path="String"/></c>
+</f></split></a>
+ <c path="Hash"><c path="String"/></c>
+ <e path="Void"/>
+</f></new>
+ </class>
+ <class path="haxe.io.BytesBuffer" params="" file="/usr/lib/haxe/std/haxe/io/BytesBuffer.hx">
+ <b><c path="String"/></b>
+ <addByte public="1" get="inline" set="null" line="55"><f a="byte">
+ <c path="Int"/>
+ <e path="Void"/>
+</f></addByte>
+ <add public="1" get="inline" set="null" line="69"><f a="src">
+ <c path="haxe.io.Bytes"/>
+ <e path="Void"/>
+</f></add>
+ <addBytes public="1" get="inline" set="null" line="84"><f a="src:pos:len">
+ <c path="haxe.io.Bytes"/>
+ <c path="Int"/>
+ <c path="Int"/>
+ <e path="Void"/>
+</f></addBytes>
+ <getBytes public="1" set="method" line="106">
+ <f a=""><c path="haxe.io.Bytes"/></f>
+ <haxe_doc>
+ Returns either a copy or a reference of the current bytes.
+ Once called, the buffer can no longer be used.
+ </haxe_doc>
+ </getBytes>
+ <new public="1" set="method" line="41"><f a=""><e path="Void"/></f></new>
+ </class>
+ <class path="haxe.io.Input" params="" file="/usr/lib/haxe/std/haxe/io/Input.hx">
+ <bigEndian public="1" set="setEndian"><e path="Bool"/></bigEndian>
+ <readByte public="1" set="method" line="35"><f a=""><c path="Int"/></f></readByte>
+ <readBytes public="1" set="method" line="44"><f a="s:pos:len">
+ <c path="haxe.io.Bytes"/>
+ <c path="Int"/>
+ <c path="Int"/>
+ <c path="Int"/>
+</f></readBytes>
+ <close public="1" set="method" line="65"><f a=""><e path="Void"/></f></close>
+ <setEndian set="method" line="68"><f a="b">
+ <e path="Bool"/>
+ <e path="Bool"/>
+</f></setEndian>
+ <readAll public="1" set="method" line="75"><f a="?bufsize">
+ <c path="Int"/>
+ <c path="haxe.io.Bytes"/>
+</f></readAll>
+ <readFullBytes public="1" set="method" line="96"><f a="s:pos:len">
+ <c path="haxe.io.Bytes"/>
+ <c path="Int"/>
+ <c path="Int"/>
+ <e path="Void"/>
+</f></readFullBytes>
+ <read public="1" set="method" line="104"><f a="nbytes">
+ <c path="Int"/>
+ <c path="haxe.io.Bytes"/>
+</f></read>
+ <readUntil public="1" set="method" line="116"><f a="end">
+ <c path="Int"/>
+ <c path="String"/>
+</f></readUntil>
+ <readLine public="1" set="method" line="124"><f a=""><c path="String"/></f></readLine>
+ <readFloat public="1" set="method" line="141"><f a=""><c path="Float"/></f></readFloat>
+ <readDouble public="1" set="method" line="155"><f a=""><c path="Float"/></f></readDouble>
+ <readInt8 public="1" set="method" line="169"><f a=""><c path="Int"/></f></readInt8>
+ <readInt16 public="1" set="method" line="176"><f a=""><c path="Int"/></f></readInt16>
+ <readUInt16 public="1" set="method" line="185"><f a=""><c path="Int"/></f></readUInt16>
+ <readInt24 public="1" set="method" line="191"><f a=""><c path="Int"/></f></readInt24>
+ <readUInt24 public="1" set="method" line="201"><f a=""><c path="Int"/></f></readUInt24>
+ <readInt31 public="1" set="method" line="208"><f a=""><c path="Int"/></f></readInt31>
+ <readUInt30 public="1" set="method" line="225"><f a=""><c path="Int"/></f></readUInt30>
+ <readInt32 public="1" set="method" line="234"><f a=""><c path="haxe.Int32"/></f></readInt32>
+ <readString public="1" set="method" line="249"><f a="len">
+ <c path="Int"/>
+ <c path="String"/>
+</f></readString>
+ <haxe_doc>
+ An Input is an abstract reader. See other classes in the [haxe.io] package
+ for several possible implementations.
+</haxe_doc>
+ </class>
+ <class path="StringTools" params="" file="/usr/lib/haxe/std/php/_std/StringTools.hx">
+ <urlEncode public="1" get="inline" set="null" line="28" static="1">
+ <f a="s">
+ <c path="String"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Encode an URL by using the standard format.
+ </haxe_doc>
+ </urlEncode>
+ <urlDecode public="1" get="inline" set="null" line="32" static="1">
+ <f a="s">
+ <c path="String"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Decode an URL using the standard format.
+ </haxe_doc>
+ </urlDecode>
+ <htmlEscape public="1" set="method" line="36" static="1">
+ <f a="s">
+ <c path="String"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Escape HTML special characters of the string.
+ </haxe_doc>
+ </htmlEscape>
+ <htmlUnescape public="1" get="inline" set="null" line="40" static="1">
+ <f a="s">
+ <c path="String"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Unescape HTML special characters of the string.
+ </haxe_doc>
+ </htmlUnescape>
+ <startsWith public="1" set="method" line="44" static="1">
+ <f a="s:start">
+ <c path="String"/>
+ <c path="String"/>
+ <e path="Bool"/>
+ </f>
+ <haxe_doc>
+ Tells if the string [s] starts with the string [start].
+ </haxe_doc>
+ </startsWith>
+ <endsWith public="1" set="method" line="48" static="1">
+ <f a="s:end">
+ <c path="String"/>
+ <c path="String"/>
+ <e path="Bool"/>
+ </f>
+ <haxe_doc>
+ Tells if the string [s] ends with the string [end].
+ </haxe_doc>
+ </endsWith>
+ <isSpace public="1" set="method" line="54" static="1">
+ <f a="s:pos">
+ <c path="String"/>
+ <c path="Int"/>
+ <e path="Bool"/>
+ </f>
+ <haxe_doc>
+ Tells if the character in the string [s] at position [pos] is a space.
+ </haxe_doc>
+ </isSpace>
+ <ltrim public="1" get="inline" set="null" line="59" static="1">
+ <f a="s">
+ <c path="String"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Removes spaces at the left of the String [s].
+ </haxe_doc>
+ </ltrim>
+ <rtrim public="1" get="inline" set="null" line="63" static="1">
+ <f a="s">
+ <c path="String"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Removes spaces at the right of the String [s].
+ </haxe_doc>
+ </rtrim>
+ <trim public="1" get="inline" set="null" line="67" static="1">
+ <f a="s">
+ <c path="String"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Removes spaces at the beginning and the end of the String [s].
+ </haxe_doc>
+ </trim>
+ <rpad public="1" get="inline" set="null" line="71" static="1">
+ <f a="s:c:l">
+ <c path="String"/>
+ <c path="String"/>
+ <c path="Int"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Pad the string [s] by appending [c] at its right until it reach [l] characters.
+ </haxe_doc>
+ </rpad>
+ <lpad public="1" get="inline" set="null" line="75" static="1">
+ <f a="s:c:l">
+ <c path="String"/>
+ <c path="String"/>
+ <c path="Int"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Pad the string [s] by appending [c] at its left until it reach [l] characters.
+ </haxe_doc>
+ </lpad>
+ <replace public="1" get="inline" set="null" line="79" static="1">
+ <f a="s:sub:by">
+ <c path="String"/>
+ <c path="String"/>
+ <c path="String"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Replace all occurences of the string [sub] in the string [s] by the string [by].
+ </haxe_doc>
+ </replace>
+ <hex public="1" set="method" line="83" static="1">
+ <f a="n:?digits">
+ <c path="Int"/>
+ <c path="Int"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Encode a number into a hexadecimal representation, with an optional number of zeros for left padding.
+ </haxe_doc>
+ </hex>
+ <fastCodeAt public="1" get="inline" set="null" line="90" static="1">
+ <f a="s:index">
+ <c path="String"/>
+ <c path="Int"/>
+ <c path="Int"/>
+ </f>
+ <haxe_doc>
+ Provides a fast native string charCodeAt access. Since the EOF value might vary depending on the platforms, always test with StringTools.isEOF.
+ Only guaranteed to work if index in [0,s.length] range. Might not work with strings containing \0 char.
+ </haxe_doc>
+ </fastCodeAt>
+ <isEOF public="1" get="inline" set="null" line="94" static="1"><f a="c">
+ <c path="Int"/>
+ <e path="Bool"/>
+</f></isEOF>
+ <haxe_doc>
+ The StringTools class contains some extra functionalities for [String]
+ manipulation. It's stored in a different class in order to prevent
+ the standard [String] of being bloated and thus increasing the size of
+ each application using it.
+</haxe_doc>
+ </class>
+ <class path="Reflect" params="" file="/usr/lib/haxe/std/php/_std/Reflect.hx">
+ <hasField public="1" get="inline" set="null" line="28" static="1">
+ <f a="o:field">
+ <d/>
+ <c path="String"/>
+ <e path="Bool"/>
+ </f>
+ <haxe_doc>
+ Tells if an object has a field set. This doesn't take into account the object prototype (class methods).
+ </haxe_doc>
+ </hasField>
+ <field public="1" set="method" line="32" static="1">
+ <f a="o:field">
+ <d/>
+ <c path="String"/>
+ <d/>
+ </f>
+ <haxe_doc>
+ Returns the field of an object, or null if [o] is not an object or doesn't have this field.
+ </haxe_doc>
+ </field>
+ <setField public="1" get="inline" set="null" line="36" static="1">
+ <f a="o:field:value">
+ <d/>
+ <c path="String"/>
+ <d/>
+ <e path="Void"/>
+ </f>
+ <haxe_doc>
+ Set an object field value.
+ </haxe_doc>
+ </setField>
+ <callMethod public="1" set="method" line="40" static="1">
+ <f a="o:func:args">
+ <d/>
+ <d/>
+ <c path="Array"><d/></c>
+ <d/>
+ </f>
+ <haxe_doc>
+ Call a method with the given object and arguments.
+ </haxe_doc>
+ </callMethod>
+ <fields public="1" set="method" line="47" static="1">
+ <f a="o">
+ <d/>
+ <c path="Array"><c path="String"/></c>
+ </f>
+ <haxe_doc>
+ Returns the list of fields of an object, excluding its prototype (class methods).
+ </haxe_doc>
+ </fields>
+ <isFunction public="1" set="method" line="56" static="1">
+ <f a="f">
+ <d/>
+ <e path="Bool"/>
+ </f>
+ <haxe_doc>
+ Tells if a value is a function or not.
+ </haxe_doc>
+ </isFunction>
+ <compare public="1" params="T" set="method" line="60" static="1">
+ <f a="a:b">
+ <c path="compare.T"/>
+ <c path="compare.T"/>
+ <c path="Int"/>
+ </f>
+ <haxe_doc>
+ Generic comparison function, does not work for methods, see [compareMethods]
+ </haxe_doc>
+ </compare>
+ <compareMethods public="1" set="method" line="64" static="1">
+ <f a="f1:f2">
+ <d/>
+ <d/>
+ <e path="Bool"/>
+ </f>
+ <haxe_doc>
+ Compare two methods closures. Returns true if it's the same method of the same instance.
+ </haxe_doc>
+ </compareMethods>
+ <isObject public="1" set="method" line="72" static="1">
+ <f a="v">
+ <d/>
+ <e path="Bool"/>
+ </f>
+ <haxe_doc>
+ Tells if a value is an object or not.
+
+ </haxe_doc>
+ </isObject>
+ <deleteField public="1" set="method" line="80" static="1">
+ <f a="o:f">
+ <d/>
+ <c path="String"/>
+ <e path="Bool"/>
+ </f>
+ <haxe_doc>
+ Delete an object field.
+ </haxe_doc>
+ </deleteField>
+ <copy public="1" params="T" set="method" line="86" static="1">
+ <f a="o">
+ <c path="copy.T"/>
+ <c path="copy.T"/>
+ </f>
+ <haxe_doc>
+ Make a copy of the fields of an object.
+ </haxe_doc>
+ </copy>
+ <makeVarArgs public="1" set="method" line="94" static="1">
+ <f a="f">
+ <f a="">
+ <c path="Array"><d/></c>
+ <d/>
+ </f>
+ <d/>
+ </f>
+ <haxe_doc>
+ Transform a function taking an array of arguments into a function that can
+ be called with any number of arguments.
+ </haxe_doc>
+ </makeVarArgs>
+ <haxe_doc>
+ The Reflect API is a way to manipulate values dynamicly through an
+ abstract interface in an untyped manner. Use with care.
+</haxe_doc>
+ </class>
+ <class path="haxe.Log" params="" file="/usr/lib/haxe/std/haxe/Log.hx">
+ <trace public="1" set="dynamic" line="29" static="1"><f a="v:?infos">
+ <d/>
+ <t path="haxe.PosInfos"/>
+ <e path="Void"/>
+</f></trace>
+ <clear public="1" set="dynamic" line="43" static="1"><f a=""><e path="Void"/></f></clear>
+ </class>
+ <class path="drupal.api.IApi" params="" file="drupal/api/IApi.hx" interface="1"/>
+ <class path="StringBuf" params="" file="/usr/lib/haxe/std/php/_std/StringBuf.hx">
+ <b><c path="String"/></b>
+ <add public="1" get="inline" set="null" line="33">
+ <f a="x">
+ <d/>
+ <e path="Void"/>
+ </f>
+ <haxe_doc>
+ Adds the representation of any value to the string buffer.
+ </haxe_doc>
+ </add>
+ <addSub public="1" get="inline" set="null" line="38">
+ <f a="s:pos:?len">
+ <c path="String"/>
+ <c path="Int"/>
+ <c path="Int"/>
+ <e path="Void"/>
+ </f>
+ <haxe_doc>
+ Adds a part of a string to the string buffer.
+ </haxe_doc>
+ </addSub>
+ <addChar public="1" get="inline" set="null" line="42">
+ <f a="c">
+ <c path="Int"/>
+ <e path="Void"/>
+ </f>
+ <haxe_doc>
+ Adds a character to the string buffer.
+ </haxe_doc>
+ </addChar>
+ <toString public="1" get="inline" set="null" line="46">
+ <f a=""><c path="String"/></f>
+ <haxe_doc>
+ Returns the content of the string buffer.
+ The buffer is not emptied by this operation.
+ </haxe_doc>
+ </toString>
+ <new public="1" set="method" line="29"><f a=""><e path="Void"/></f></new>
+ <haxe_doc>
+ A String buffer is an efficient way to build a big string by
+ appending small elements together.
+</haxe_doc>
+ </class>
+ <class path="drupal.dispatcher.IDispatcher" params="" file="drupal/dispatcher/IDispatcher.hx" interface="1">
+ <url public="1"><c path="String"/></url>
+ <setUrl public="1" set="method"><f a="base_url">
+ <c path="String"/>
+ <e path="Void"/>
+</f></setUrl>
+ <dispatch public="1" set="method"><f a=""><e path="Void"/></f></dispatch>
+ <getOutput public="1" set="method"><f a=""><c path="String"/></f></getOutput>
+ </class>
+ <class path="drupal.dispatcher.UrlDispatcher" params="" file="drupal/dispatcher/UrlDispatcher.hx">
+ <implements path="drupal.dispatcher.IDispatcher"/>
+ <url public="1"><c path="String"/></url>
+ <api><c path="drupal.api.Api"/></api>
+ <setUrl public="1" set="method" line="12"><f a="base_url">
+ <c path="String"/>
+ <e path="Void"/>
+</f></setUrl>
+ <dispatch public="1" set="method" line="14"><f a=""><e path="Void"/></f></dispatch>
+ <getOutput public="1" set="method" line="32"><f a=""><c path="String"/></f></getOutput>
+ <new public="1" set="method" line="30"><f a="base_url">
+ <c path="String"/>
+ <e path="Void"/>
+</f></new>
+ </class>
+ <class path="php.Boot" params="" file="/usr/lib/haxe/std/php/Boot.hx">
+ <qtypes static="1"><unknown/></qtypes>
+ <ttypes static="1"><unknown/></ttypes>
+ <tpaths static="1"><unknown/></tpaths>
+ <skip_constructor line="7" static="1"><e path="Bool"/></skip_constructor>
+ </class>
+ <class path="haxe.Int32" params="" file="/usr/lib/haxe/std/haxe/Int32.hx">
+ <make public="1" get="inline" set="null" line="29" static="1"><f a="a:b">
+ <c path="Int"/>
+ <c path="Int"/>
+ <c path="haxe.Int32"/>
+</f></make>
+ <ofInt public="1" get="inline" set="null" line="33" static="1"><f a="x">
+ <c path="Int"/>
+ <c path="haxe.Int32"/>
+</f></ofInt>
+ <clamp get="inline" set="null" line="37" static="1"><f a="x">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+</f></clamp>
+ <toInt public="1" get="inline" set="null" line="45" static="1"><f a="x">
+ <c path="haxe.Int32"/>
+ <c path="Int"/>
+</f></toInt>
+ <toNativeInt public="1" get="inline" set="null" line="54" static="1"><f a="x">
+ <c path="haxe.Int32"/>
+ <c path="Int"/>
+</f></toNativeInt>
+ <add public="1" get="inline" set="null" line="58" static="1"><f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+</f></add>
+ <sub public="1" get="inline" set="null" line="62" static="1"><f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+</f></sub>
+ <mul public="1" get="inline" set="null" line="66" static="1"><f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+</f></mul>
+ <div public="1" get="inline" set="null" line="70" static="1"><f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+</f></div>
+ <mod public="1" get="inline" set="null" line="74" static="1"><f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+</f></mod>
+ <shl public="1" get="inline" set="null" line="78" static="1"><f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="Int"/>
+ <c path="haxe.Int32"/>
+</f></shl>
+ <shr public="1" get="inline" set="null" line="82" static="1"><f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="Int"/>
+ <c path="haxe.Int32"/>
+</f></shr>
+ <ushr public="1" get="inline" set="null" line="86" static="1"><f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="Int"/>
+ <c path="haxe.Int32"/>
+</f></ushr>
+ <and public="1" get="inline" set="null" line="90" static="1"><f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+</f></and>
+ <or public="1" get="inline" set="null" line="94" static="1"><f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+</f></or>
+ <xor public="1" get="inline" set="null" line="98" static="1"><f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+</f></xor>
+ <neg public="1" get="inline" set="null" line="102" static="1"><f a="a">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+</f></neg>
+ <isNeg public="1" get="inline" set="null" line="106" static="1"><f a="a">
+ <c path="haxe.Int32"/>
+ <e path="Bool"/>
+</f></isNeg>
+ <isZero public="1" get="inline" set="null" line="110" static="1"><f a="a">
+ <c path="haxe.Int32"/>
+ <e path="Bool"/>
+</f></isZero>
+ <complement public="1" get="inline" set="null" line="114" static="1"><f a="a">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+</f></complement>
+ <compare public="1" get="inline" set="null" line="118" static="1"><f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+ <c path="Int"/>
+</f></compare>
+ <ucompare public="1" set="method" line="129" static="1">
+ <f a="a:b">
+ <c path="haxe.Int32"/>
+ <c path="haxe.Int32"/>
+ <c path="Int"/>
+ </f>
+ <haxe_doc>
+ Compare two Int32 in unsigned mode.
+ </haxe_doc>
+ </ucompare>
+ </class>
+ <class path="haxe.io.Output" params="" file="/usr/lib/haxe/std/haxe/io/Output.hx">
+ <bigEndian public="1" set="setEndian"><e path="Bool"/></bigEndian>
+ <writeByte public="1" set="method" line="37"><f a="c">
+ <c path="Int"/>
+ <e path="Void"/>
+</f></writeByte>
+ <writeBytes public="1" set="method" line="41"><f a="s:pos:len">
+ <c path="haxe.io.Bytes"/>
+ <c path="Int"/>
+ <c path="Int"/>
+ <c path="Int"/>
+</f></writeBytes>
+ <flush public="1" set="method" line="64"><f a=""><e path="Void"/></f></flush>
+ <close public="1" set="method" line="67"><f a=""><e path="Void"/></f></close>
+ <setEndian set="method" line="70"><f a="b">
+ <e path="Bool"/>
+ <e path="Bool"/>
+</f></setEndian>
+ <write public="1" set="method" line="77"><f a="s">
+ <c path="haxe.io.Bytes"/>
+ <e path="Void"/>
+</f></write>
+ <writeFullBytes public="1" set="method" line="88"><f a="s:pos:len">
+ <c path="haxe.io.Bytes"/>
+ <c path="Int"/>
+ <c path="Int"/>
+ <e path="Void"/>
+</f></writeFullBytes>
+ <writeFloat public="1" set="method" line="96"><f a="x">
+ <c path="Float"/>
+ <e path="Void"/>
+</f></writeFloat>
+ <writeDouble public="1" set="method" line="108"><f a="x">
+ <c path="Float"/>
+ <e path="Void"/>
+</f></writeDouble>
+ <writeInt8 public="1" set="method" line="120"><f a="x">
+ <c path="Int"/>
+ <e path="Void"/>
+</f></writeInt8>
+ <writeInt16 public="1" set="method" line="126"><f a="x">
+ <c path="Int"/>
+ <e path="Void"/>
+</f></writeInt16>
+ <writeUInt16 public="1" set="method" line="131"><f a="x">
+ <c path="Int"/>
+ <e path="Void"/>
+</f></writeUInt16>
+ <writeInt24 public="1" set="method" line="142"><f a="x">
+ <c path="Int"/>
+ <e path="Void"/>
+</f></writeInt24>
+ <writeUInt24 public="1" set="method" line="147"><f a="x">
+ <c path="Int"/>
+ <e path="Void"/>
+</f></writeUInt24>
+ <writeInt31 public="1" set="method" line="160"><f a="x">
+ <c path="Int"/>
+ <e path="Void"/>
+</f></writeInt31>
+ <writeUInt30 public="1" set="method" line="177"><f a="x">
+ <c path="Int"/>
+ <e path="Void"/>
+</f></writeUInt30>
+ <writeInt32 public="1" set="method" line="192"><f a="x">
+ <c path="haxe.Int32"/>
+ <e path="Void"/>
+</f></writeInt32>
+ <prepare public="1" set="method" line="212">
+ <f a="nbytes">
+ <c path="Int"/>
+ <e path="Void"/>
+ </f>
+ <haxe_doc>
+ Inform that we are about to write at least a specified number of bytes.
+ The underlying implementation can allocate proper working space depending
+ on this information, or simply ignore it. This is not a mandatory call
+ but a tip and is only used in some specific cases.
+ </haxe_doc>
+ </prepare>
+ <writeInput public="1" set="method" line="215"><f a="i:?bufsize">
+ <c path="haxe.io.Input"/>
+ <c path="Int"/>
+ <e path="Void"/>
+</f></writeInput>
+ <writeString public="1" set="method" line="237"><f a="s">
+ <c path="String"/>
+ <e path="Void"/>
+</f></writeString>
+ <haxe_doc>
+ An Output is an abstract write. A specific output implementation will only
+ have to override the [writeChar] and maybe the [write], [flush] and [close]
+ methods. See [File.write] and [String.write] for two ways of creating an
+ Output.
+</haxe_doc>
+ </class>
+ <class path="haxe.io.Bytes" params="" file="/usr/lib/haxe/std/haxe/io/Bytes.hx">
+ <alloc public="1" set="method" line="225" static="1"><f a="length">
+ <c path="Int"/>
+ <c path="haxe.io.Bytes"/>
+</f></alloc>
+ <ofString public="1" set="method" line="253" static="1"><f a="s">
+ <c path="String"/>
+ <c path="haxe.io.Bytes"/>
+</f></ofString>
+ <ofData public="1" set="method" line="292" static="1"><f a="b">
+ <t path="haxe.io.BytesData"/>
+ <c path="haxe.io.Bytes"/>
+</f></ofData>
+ <length public="1" set="null"><c path="Int"/></length>
+ <b><t path="haxe.io.BytesData"/></b>
+ <get public="1" get="inline" set="null" line="37"><f a="pos">
+ <c path="Int"/>
+ <c path="Int"/>
+</f></get>
+ <set public="1" get="inline" set="null" line="51"><f a="pos:v">
+ <c path="Int"/>
+ <c path="Int"/>
+ <e path="Void"/>
+</f></set>
+ <blit public="1" set="method" line="65"><f a="pos:src:srcpos:len">
+ <c path="Int"/>
+ <c path="haxe.io.Bytes"/>
+ <c path="Int"/>
+ <c path="Int"/>
+ <e path="Void"/>
+</f></blit>
+ <sub public="1" set="method" line="93"><f a="pos:len">
+ <c path="Int"/>
+ <c path="Int"/>
+ <c path="haxe.io.Bytes"/>
+</f></sub>
+ <compare public="1" set="method" line="112"><f a="other">
+ <c path="haxe.io.Bytes"/>
+ <c path="Int"/>
+</f></compare>
+ <readString public="1" set="method" line="148"><f a="pos:len">
+ <c path="Int"/>
+ <c path="Int"/>
+ <c path="String"/>
+</f></readString>
+ <toString public="1" set="method" line="192"><f a=""><c path="String"/></f></toString>
+ <toHex public="1" set="method" line="207"><f a=""><c path="String"/></f></toHex>
+ <getData public="1" get="inline" set="null" line="221"><f a=""><t path="haxe.io.BytesData"/></f></getData>
+ <new set="method" line="32"><f a="length:b">
+ <c path="Int"/>
+ <t path="haxe.io.BytesData"/>
+ <e path="Void"/>
+</f></new>
+ </class>
+ <class path="Date" params="" file="/usr/lib/haxe/std/php/_std/Date.hx">
+ <now public="1" set="method" line="75" static="1">
+ <f a=""><c path="Date"/></f>
+ <haxe_doc>
+ Returns a Date representing the current local time.
+ </haxe_doc>
+ </now>
+ <fromPhpTime set="method" line="79" static="1"><f a="t">
+ <c path="Float"/>
+ <c path="Date"/>
+</f></fromPhpTime>
+ <fromTime public="1" set="method" line="85" static="1">
+ <f a="t">
+ <c path="Float"/>
+ <c path="Date"/>
+ </f>
+ <haxe_doc>
+ Returns a Date from a timestamp [t] which is the number of
+ milliseconds elapsed since 1st January 1970.
+ </haxe_doc>
+ </fromTime>
+ <fromString public="1" set="method" line="91" static="1">
+ <f a="s">
+ <c path="String"/>
+ <c path="Date"/>
+ </f>
+ <haxe_doc>
+ Returns a Date from a formated string of one of the following formats :
+ [YYYY-MM-DD hh:mm:ss] or [YYYY-MM-DD] or [hh:mm:ss]. The first two formats
+ are expressed in local time, the third in UTC Epoch.
+ </haxe_doc>
+ </fromString>
+ <__t><c path="Float"/></__t>
+ <getTime public="1" set="method" line="34">
+ <f a=""><c path="Float"/></f>
+ <haxe_doc>
+ Returns the timestamp of the date. It's the number of milliseconds
+ elapsed since 1st January 1970. It might only have a per-second precision
+ depending on the platforms.
+ </haxe_doc>
+ </getTime>
+ <getPhpTime set="method" line="38"><f a=""><c path="Float"/></f></getPhpTime>
+ <getFullYear public="1" set="method" line="42">
+ <f a=""><c path="Int"/></f>
+ <haxe_doc>
+ Returns the full year of the date.
+ </haxe_doc>
+ </getFullYear>
+ <getMonth public="1" set="method" line="46">
+ <f a=""><c path="Int"/></f>
+ <haxe_doc>
+ Returns the month of the date (0-11 range).
+ </haxe_doc>
+ </getMonth>
+ <getDate public="1" set="method" line="51">
+ <f a=""><c path="Int"/></f>
+ <haxe_doc>
+ Returns the day of the date (1-31 range).
+ </haxe_doc>
+ </getDate>
+ <getHours public="1" set="method" line="55">
+ <f a=""><c path="Int"/></f>
+ <haxe_doc>
+ Returns the hours value of the date (0-23 range).
+ </haxe_doc>
+ </getHours>
+ <getMinutes public="1" set="method" line="59">
+ <f a=""><c path="Int"/></f>
+ <haxe_doc>
+ Returns the minutes value of the date (0-59 range).
+ </haxe_doc>
+ </getMinutes>
+ <getSeconds public="1" set="method" line="63">
+ <f a=""><c path="Int"/></f>
+ <haxe_doc>
+ Returns the seconds of the date (0-59 range).
+ </haxe_doc>
+ </getSeconds>
+ <getDay public="1" set="method" line="67">
+ <f a=""><c path="Int"/></f>
+ <haxe_doc>
+ Returns the week day of the date (0-6 range).
+ </haxe_doc>
+ </getDay>
+ <toString public="1" set="method" line="71">
+ <f a=""><c path="String"/></f>
+ <haxe_doc>
+ Returns a string representation for the Date, by using the
+ standard format [YYYY-MM-DD HH:MM:SS]. See [DateTools.format] for
+ other formating rules.
+ </haxe_doc>
+ </toString>
+ <new public="1" set="method" line="30"><f a="year:month:day:hour:min:sec">
+ <c path="Int"/>
+ <c path="Int"/>
+ <c path="Int"/>
+ <c path="Int"/>
+ <c path="Int"/>
+ <c path="Int"/>
+ <e path="Void"/>
+</f></new>
+ <haxe_doc>
+ The Date class is used for date manipulation. There is some extra functions
+ available in the [DateTools] class.
+</haxe_doc>
+ </class>
+ <enum path="haxe._Template.TemplateExpr" params="" file="/usr/lib/haxe/std/haxe/Template.hx" private="1" module="haxe.Template">
+ <OpVar a="v"><c path="String"/></OpVar>
+ <OpStr a="str"><c path="String"/></OpStr>
+ <OpMacro a="name:params">
+ <c path="String"/>
+ <c path="List"><e path="haxe._Template.TemplateExpr"/></c>
+ </OpMacro>
+ <OpIf a="expr:eif:eelse">
+ <f a=""><d/></f>
+ <e path="haxe._Template.TemplateExpr"/>
+ <e path="haxe._Template.TemplateExpr"/>
+ </OpIf>
+ <OpForeach a="expr:loop">
+ <f a=""><d/></f>
+ <e path="haxe._Template.TemplateExpr"/>
+ </OpForeach>
+ <OpExpr a="expr"><f a=""><d/></f></OpExpr>
+ <OpBlock a="l"><c path="List"><e path="haxe._Template.TemplateExpr"/></c></OpBlock>
+ </enum>
+ <typedef path="haxe._Template.Token" params="" file="/usr/lib/haxe/std/haxe/Template.hx" private="1" module="haxe.Template"><a>
+ <s><e path="Bool"/></s>
+ <p><c path="String"/></p>
+ <l><c path="Array"><c path="String"/></c></l>
+</a></typedef>
+ <typedef path="haxe._Template.ExprToken" params="" file="/usr/lib/haxe/std/haxe/Template.hx" private="1" module="haxe.Template"><a>
+ <s><e path="Bool"/></s>
+ <p><c path="String"/></p>
+</a></typedef>
+ <class path="EReg" params="" file="/usr/lib/haxe/std/php/_std/EReg.hx">
+ <r><d/></r>
+ <last><c path="String"/></last>
+ <global><e path="Bool"/></global>
+ <pattern><c path="String"/></pattern>
+ <options><c path="String"/></options>
+ <re><c path="String"/></re>
+ <matches><c path="ArrayAccess"><d/></c></matches>
+ <match public="1" set="method" line="46">
+ <f a="s">
+ <c path="String"/>
+ <e path="Bool"/>
+ </f>
+ <haxe_doc>
+ Tells if the regular expression matches the String.
+ Updates the internal state accordingly.
+ </haxe_doc>
+ </match>
+ <matched public="1" set="method" line="56">
+ <f a="n">
+ <c path="Int"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Returns a matched group or throw an expection if there
+ is no such group. If [n = 0], the whole matched substring
+ is returned.
+ </haxe_doc>
+ </matched>
+ <matchedLeft public="1" set="method" line="65">
+ <f a=""><c path="String"/></f>
+ <haxe_doc>
+ Returns the part of the string that was as the left of
+ of the matched substring.
+ </haxe_doc>
+ </matchedLeft>
+ <matchedRight public="1" set="method" line="70">
+ <f a=""><c path="String"/></f>
+ <haxe_doc>
+ Returns the part of the string that was at the right of
+ of the matched substring.
+ </haxe_doc>
+ </matchedRight>
+ <matchedPos public="1" set="method" line="76">
+ <f a=""><a>
+ <pos><c path="Int"/></pos>
+ <len><c path="Int"/></len>
+</a></f>
+ <haxe_doc>
+ Returns the position of the matched substring within the
+ original matched string.
+ </haxe_doc>
+ </matchedPos>
+ <split public="1" set="method" line="80">
+ <f a="s">
+ <c path="String"/>
+ <c path="Array"><c path="String"/></c>
+ </f>
+ <haxe_doc>
+ Split a string by using the regular expression to match
+ the separators.
+ </haxe_doc>
+ </split>
+ <replace public="1" set="method" line="84">
+ <f a="s:by">
+ <c path="String"/>
+ <c path="String"/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Replaces a pattern by another string. The [by] format can
+ contains [$1] to [$9] that will correspond to groups matched
+ while replacing. [$$] means the [$] character.
+ </haxe_doc>
+ </replace>
+ <customReplace public="1" set="method" line="91">
+ <f a="s:f">
+ <c path="String"/>
+ <f a="">
+ <c path="EReg"/>
+ <c path="String"/>
+ </f>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ For each occurence of the pattern in the string [s], the function [f] is called and
+ can return the string that needs to be replaced. All occurences are matched anyway,
+ and setting the [g] flag might cause some incorrect behavior on some platforms.
+ </haxe_doc>
+ </customReplace>
+ <new public="1" set="method" line="36"><f a="r:opt">
+ <c path="String"/>
+ <c path="String"/>
+ <e path="Void"/>
+</f></new>
+ <haxe_doc>
+ Regular expressions are a way to find regular patterns into
+ Strings. Have a look at the tutorial on haXe website to learn
+ how to use them.
+</haxe_doc>
+ </class>
+ <class path="haxe.Template" params="" file="/usr/lib/haxe/std/haxe/Template.hx">
+ <splitter line="50" static="1"><c path="EReg"/></splitter>
+ <expr_splitter line="51" static="1"><c path="EReg"/></expr_splitter>
+ <expr_trim line="52" static="1"><c path="EReg"/></expr_trim>
+ <expr_int line="53" static="1"><c path="EReg"/></expr_int>
+ <expr_float line="54" static="1"><c path="EReg"/></expr_float>
+ <globals public="1" line="56" static="1"><d/></globals>
+ <expr><e path="haxe._Template.TemplateExpr"/></expr>
+ <context><d/></context>
+ <macros><d/></macros>
+ <stack><c path="List"><d/></c></stack>
+ <buf><c path="StringBuf"/></buf>
+ <execute public="1" set="method" line="71"><f a="context:?macros">
+ <d/>
+ <d/>
+ <c path="String"/>
+</f></execute>
+ <resolve set="method" line="80"><f a="v">
+ <c path="String"/>
+ <d/>
+</f></resolve>
+ <parseTokens set="method" line="91"><f a="data">
+ <c path="String"/>
+ <c path="List"><t path="haxe._Template.Token"/></c>
+</f></parseTokens>
+ <parseBlock set="method" line="127"><f a="tokens">
+ <c path="List"><t path="haxe._Template.Token"/></c>
+ <e path="haxe._Template.TemplateExpr"/>
+</f></parseBlock>
+ <parse set="method" line="142"><f a="tokens">
+ <c path="List"><t path="haxe._Template.Token"/></c>
+ <e path="haxe._Template.TemplateExpr"/>
+</f></parse>
+ <parseExpr set="method" line="192"><f a="data">
+ <c path="String"/>
+ <f a=""><unknown/></f>
+</f></parseExpr>
+ <makeConst set="method" line="223"><f a="v">
+ <c path="String"/>
+ <f a=""><d/></f>
+</f></makeConst>
+ <makePath set="method" line="242"><f a="e:l">
+ <f a=""><d/></f>
+ <c path="List"><t path="haxe._Template.ExprToken"/></c>
+ <f a=""><d/></f>
+</f></makePath>
+ <makeExpr set="method" line="256"><f a="l">
+ <c path="List"><t path="haxe._Template.ExprToken"/></c>
+ <f a=""><d/></f>
+</f></makeExpr>
+ <makeExpr2 set="method" line="260"><f a="l">
+ <c path="List"><t path="haxe._Template.ExprToken"/></c>
+ <f a=""><d/></f>
+</f></makeExpr2>
+ <run set="method" line="306"><f a="e">
+ <e path="haxe._Template.TemplateExpr"/>
+ <e path="Void"/>
+</f></run>
+ <new public="1" set="method" line="64"><f a="str">
+ <c path="String"/>
+ <e path="Void"/>
+</f></new>
+ </class>
+ <enum path="php.io.FileHandle" params="" file="/usr/lib/haxe/std/php/io/File.hx" module="php.io.File"/>
+ <enum path="php.io.FileSeek" params="" file="/usr/lib/haxe/std/php/io/File.hx" module="php.io.File">
+ <SeekEnd/>
+ <SeekCur/>
+ <SeekBegin/>
+ </enum>
+ <class path="php.io.File" params="" file="/usr/lib/haxe/std/php/io/File.hx">
+ <getContent public="1" set="method" line="41" static="1"><f a="path">
+ <c path="String"/>
+ <c path="String"/>
+</f></getContent>
+ <getBytes public="1" set="method" line="45" static="1"><f a="path">
+ <c path="String"/>
+ <c path="haxe.io.Bytes"/>
+</f></getBytes>
+ <putContent public="1" set="method" line="49" static="1"><f a="path:content">
+ <c path="String"/>
+ <c path="String"/>
+ <c path="Int"/>
+</f></putContent>
+ <read public="1" set="method" line="53" static="1"><f a="path:binary">
+ <c path="String"/>
+ <e path="Bool"/>
+ <c path="php.io.FileInput"/>
+</f></read>
+ <write public="1" set="method" line="57" static="1"><f a="path:binary">
+ <c path="String"/>
+ <e path="Bool"/>
+ <c path="php.io.FileOutput"/>
+</f></write>
+ <append public="1" set="method" line="61" static="1"><f a="path:binary">
+ <c path="String"/>
+ <e path="Bool"/>
+ <c path="php.io.FileOutput"/>
+</f></append>
+ <copy public="1" set="method" line="65" static="1"><f a="src:dst">
+ <c path="String"/>
+ <c path="String"/>
+ <e path="Void"/>
+</f></copy>
+ <stdin public="1" set="method" line="69" static="1"><f a=""><c path="php.io.FileInput"/></f></stdin>
+ <stdout public="1" set="method" line="73" static="1"><f a=""><c path="php.io.FileOutput"/></f></stdout>
+ <stderr public="1" set="method" line="77" static="1"><f a=""><c path="php.io.FileOutput"/></f></stderr>
+ <getChar public="1" set="method" line="81" static="1"><f a="echo">
+ <e path="Bool"/>
+ <c path="Int"/>
+</f></getChar>
+ <haxe_doc>
+ API for reading and writing to files.
+</haxe_doc>
+ </class>
+ <class path="IntIter" params="" file="/usr/lib/haxe/std/IntIter.hx">
+ <min><c path="Int"/></min>
+ <max><c path="Int"/></max>
+ <hasNext public="1" set="method" line="46">
+ <f a=""><e path="Bool"/></f>
+ <haxe_doc>
+ Returns true if the iterator has other items, false otherwise.
+ </haxe_doc>
+ </hasNext>
+ <next public="1" set="method" line="53">
+ <f a=""><c path="Int"/></f>
+ <haxe_doc>
+ Moves to the next item of the iterator.
+ </haxe_doc>
+ </next>
+ <new public="1" set="method" line="38">
+ <f a="min:max">
+ <c path="Int"/>
+ <c path="Int"/>
+ <e path="Void"/>
+ </f>
+ <haxe_doc><![CDATA[
+ Iterate from [min] (inclusive) to [max] (exclusive).
+ If [max <= min], the iterator will not act as a countdown.
+ ]]></haxe_doc>
+ </new>
+ <haxe_doc>
+ Integer iterator. Used for interval implementation.
+</haxe_doc>
+ </class>
+ <enum path="haxe.io.Error" params="" file="/usr/lib/haxe/std/haxe/io/Error.hx">
+ <Overflow><haxe_doc> An integer value is outside its allowed range </haxe_doc></Overflow>
+ <OutsideBounds><haxe_doc> An operation on Bytes is outside of its valid range </haxe_doc></OutsideBounds>
+ <Custom a="e">
+ <d/>
+ <haxe_doc> Other errors </haxe_doc>
+ </Custom>
+ <Blocked><haxe_doc> The IO is set into nonblocking mode and some data cannot be read or written </haxe_doc></Blocked>
+ <haxe_doc>
+ The possible IO errors that can occur
+</haxe_doc>
+ </enum>
+ <class path="Std" params="" file="/usr/lib/haxe/std/php/_std/Std.hx">
+ <is public="1" set="method" line="28" static="1">
+ <f a="v:t">
+ <d/>
+ <d/>
+ <e path="Bool"/>
+ </f>
+ <haxe_doc>
+ Tells if a value v is of the type t.
+ </haxe_doc>
+ </is>
+ <string public="1" set="method" line="32" static="1">
+ <f a="s">
+ <d/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Convert any value to a String
+ </haxe_doc>
+ </string>
+ <int public="1" get="inline" set="null" line="36" static="1">
+ <f a="x">
+ <c path="Float"/>
+ <c path="Int"/>
+ </f>
+ <haxe_doc>
+ Convert a Float to an Int, rounded down.
+ </haxe_doc>
+ </int>
+ <parseInt public="1" set="method" line="40" static="1">
+ <f a="x">
+ <c path="String"/>
+ <t path="Null"><c path="Int"/></t>
+ </f>
+ <haxe_doc>
+ Convert a String to an Int, parsing different possible representations. Returns [null] if could not be parsed.
+ </haxe_doc>
+ </parseInt>
+ <parseFloat public="1" set="method" line="49" static="1">
+ <f a="x">
+ <c path="String"/>
+ <c path="Float"/>
+ </f>
+ <haxe_doc>
+ Convert a String to a Float, parsing different possible reprensations.
+ </haxe_doc>
+ </parseFloat>
+ <random public="1" set="method" line="53" static="1">
+ <f a="x">
+ <c path="Int"/>
+ <c path="Int"/>
+ </f>
+ <haxe_doc>
+ Return a random integer between 0 included and x excluded.
+ </haxe_doc>
+ </random>
+ <haxe_doc>
+ The Std class provides standard methods for manipulating basic types.
+</haxe_doc>
+ </class>
+ <typedef path="haxe.TypeResolver" params="" file="/usr/lib/haxe/std/haxe/Unserializer.hx" module="haxe.Unserializer"><a>
+ <resolveEnum set="method"><f a="name">
+ <c path="String"/>
+ <c path="Enum"><d/></c>
+</f></resolveEnum>
+ <resolveClass set="method"><f a="name">
+ <c path="String"/>
+ <c path="Class"><d/></c>
+</f></resolveClass>
+</a></typedef>
+ <class path="Type" params="" file="/usr/lib/haxe/std/php/_std/Type.hx">
+ <getClass public="1" params="T" set="method" line="15" static="1">
+ <f a="o">
+ <c path="getClass.T"/>
+ <c path="Class"><c path="getClass.T"/></c>
+ </f>
+ <haxe_doc>
+ Returns the class of a value or [null] if this value is not a Class instance.
+ </haxe_doc>
+ </getClass>
+ <getEnum public="1" set="method" line="35" static="1">
+ <f a="o">
+ <d/>
+ <c path="Enum"><d/></c>
+ </f>
+ <haxe_doc>
+ Returns the enum of a value or [null] if this value is not an Enum instance.
+ </haxe_doc>
+ </getEnum>
+ <getSuperClass public="1" set="method" line="42" static="1">
+ <f a="c">
+ <c path="Class"><d/></c>
+ <c path="Class"><d/></c>
+ </f>
+ <haxe_doc>
+ Returns the super-class of a class, or null if no super class.
+ </haxe_doc>
+ </getSuperClass>
+ <getClassName public="1" set="method" line="50" static="1">
+ <f a="c">
+ <c path="Class"><d/></c>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Returns the complete name of a class.
+ </haxe_doc>
+ </getClassName>
+ <getEnumName public="1" set="method" line="56" static="1">
+ <f a="e">
+ <c path="Enum"><d/></c>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Returns the complete name of an enum.
+ </haxe_doc>
+ </getEnumName>
+ <resolveClass public="1" set="method" line="60" static="1">
+ <f a="name">
+ <c path="String"/>
+ <c path="Class"><d/></c>
+ </f>
+ <haxe_doc>
+ Evaluates a class from a name. The class must have been compiled
+ to be accessible.
+ </haxe_doc>
+ </resolveClass>
+ <resolveEnum public="1" set="method" line="68" static="1">
+ <f a="name">
+ <c path="String"/>
+ <c path="Enum"><d/></c>
+ </f>
+ <haxe_doc>
+ Evaluates an enum from a name. The enum must have been compiled
+ to be accessible.
+ </haxe_doc>
+ </resolveEnum>
+ <createInstance public="1" params="T" set="method" line="76" static="1">
+ <f a="cl:args">
+ <c path="Class"><c path="createInstance.T"/></c>
+ <c path="Array"><d/></c>
+ <c path="createInstance.T"/>
+ </f>
+ <haxe_doc>
+ Creates an instance of the given class with the list of constructor arguments.
+ </haxe_doc>
+ </createInstance>
+ <createEmptyInstance public="1" params="T" set="method" line="84" static="1">
+ <f a="cl">
+ <c path="Class"><c path="createEmptyInstance.T"/></c>
+ <c path="createEmptyInstance.T"/>
+ </f>
+ <haxe_doc>
+ Similar to [Reflect.createInstance] excepts that the constructor is not called.
+ This enables you to create an instance without any side-effect.
+ </haxe_doc>
+ </createEmptyInstance>
+ <createEnum public="1" params="T" set="method" line="109" static="1">
+ <f a="e:constr:?params">
+ <c path="Enum"><c path="createEnum.T"/></c>
+ <c path="String"/>
+ <c path="Array"><d/></c>
+ <c path="createEnum.T"/>
+ </f>
+ <haxe_doc>
+ Create an instance of an enum by using a constructor name and parameters.
+ </haxe_doc>
+ </createEnum>
+ <createEnumIndex public="1" params="T" set="method" line="121" static="1">
+ <f a="e:index:?params">
+ <c path="Enum"><c path="createEnumIndex.T"/></c>
+ <c path="Int"/>
+ <c path="Array"><d/></c>
+ <c path="createEnumIndex.T"/>
+ </f>
+ <haxe_doc>
+ Create an instance of an enum by using a constructor index and parameters.
+ </haxe_doc>
+ </createEnumIndex>
+ <getInstanceFields public="1" set="method" line="127" static="1">
+ <f a="c">
+ <c path="Class"><d/></c>
+ <c path="Array"><c path="String"/></c>
+ </f>
+ <haxe_doc>
+ Returns the list of instance fields.
+ </haxe_doc>
+ </getInstanceFields>
+ <getClassFields public="1" set="method" line="146" static="1">
+ <f a="c">
+ <c path="Class"><d/></c>
+ <c path="Array"><c path="String"/></c>
+ </f>
+ <haxe_doc>
+ Returns the list of a class static fields.
+ </haxe_doc>
+ </getClassFields>
+ <getEnumConstructs public="1" set="method" line="163" static="1">
+ <f a="e">
+ <c path="Enum"><d/></c>
+ <c path="Array"><c path="String"/></c>
+ </f>
+ <haxe_doc>
+ Returns all the available constructor names for an enum.
+ </haxe_doc>
+ </getEnumConstructs>
+ <typeof public="1" set="method" line="169" static="1">
+ <f a="v">
+ <d/>
+ <e path="ValueType"/>
+ </f>
+ <haxe_doc>
+ Returns the runtime type of a value.
+ </haxe_doc>
+ </typeof>
+ <enumEq public="1" params="T" set="method" line="193" static="1">
+ <f a="a:b">
+ <c path="enumEq.T"/>
+ <c path="enumEq.T"/>
+ <e path="Bool"/>
+ </f>
+ <haxe_doc>
+ Recursively compare two enums constructors and parameters.
+ </haxe_doc>
+ </enumEq>
+ <enumConstructor public="1" set="method" line="213" static="1">
+ <f a="e">
+ <d/>
+ <c path="String"/>
+ </f>
+ <haxe_doc>
+ Returns the constructor of an enum
+ </haxe_doc>
+ </enumConstructor>
+ <enumParameters public="1" set="method" line="217" static="1">
+ <f a="e">
+ <d/>
+ <c path="Array"><d/></c>
+ </f>
+ <haxe_doc>
+ Returns the parameters of an enum
+ </haxe_doc>
+ </enumParameters>
+ <enumIndex public="1" get="inline" set="null" line="224" static="1">
+ <f a="e">
+ <d/>
+ <c path="Int"/>
+ </f>
+ <haxe_doc>
+ Returns the index of the constructor of an enum
+ </haxe_doc>
+ </enumIndex>
+ <haxe_doc>
+ The haXe Reflection API enables you to retreive informations about any value,
+ Classes and Enums at runtime.
+</haxe_doc>
+ </class>
+ <class path="haxe.Unserializer" params="" file="/usr/lib/haxe/std/haxe/Unserializer.hx">
+ <DEFAULT_RESOLVER public="1" line="34" static="1"><t path="haxe.TypeResolver"/></DEFAULT_RESOLVER>
+ <BASE64 line="36" static="1"><c path="String"/></BASE64>
+ <CODES line="39" static="1"><c path="Array"><c path="Int"/></c></CODES>
+ <initCodes set="method" line="41" static="1"><f a=""><c path="Array"><c path="Int"/></c></f></initCodes>
+ <run public="1" set="method" line="356" static="1">
+ <f a="v">
+ <c path="String"/>
+ <d/>
+ </f>
+ <haxe_doc>
+ Unserialize a single value and return it.
+ </haxe_doc>
+ </run>
+ <buf><c path="String"/></buf>
+ <pos><c path="Int"/></pos>
+ <length><c path="Int"/></length>
+ <cache><c path="Array"><d/></c></cache>
+ <scache><c path="Array"><c path="String"/></c></scache>
+ <resolver><t path="haxe.TypeResolver"/></resolver>
+ <setResolver public="1" set="method" line="81"><f a="r">
+ <t path="haxe.TypeResolver"/>
+ <e path="Void"/>
+</f></setResolver>
+ <getResolver public="1" set="method" line="91"><f a=""><t path="haxe.TypeResolver"/></f></getResolver>
+ <get get="inline" set="null" line="95"><f a="p">
+ <c path="Int"/>
+ <c path="Int"/>
+</f></get>
+ <readDigits set="method" line="99"><f a=""><c path="Int"/></f></readDigits>
+ <unserializeObject set="method" line="124"><f a="o">
+ <a/>
+ <e path="Void"/>
+</f></unserializeObject>
+ <unserializeEnum set="method" line="139"><f a="edecl:tag">
+ <c path="Enum"><d/></c>
+ <c path="String"/>
+ <unknown/>
+</f></unserializeEnum>
+ <unserialize public="1" set="method" line="160"><f a=""><d/></f></unserialize>
+ <new public="1" set="method" line="64"><f a="buf">
+ <c path="String"/>
+ <e path="Void"/>
+</f></new>
+ </class>
+ <enum path="Void" params="" file="/usr/lib/haxe/std/StdTypes.hx" module="StdTypes"><haxe_doc>
+ The standard Void type. Only [null] values can be of the type [Void].
+</haxe_doc></enum>
+ <class path="Float" params="" file="/usr/lib/haxe/std/StdTypes.hx" module="StdTypes" extern="1"><haxe_doc>
+ The standard Float type, this is a double-precision IEEE 64bit float.
+</haxe_doc></class>
+ <class path="Int" params="" file="/usr/lib/haxe/std/StdTypes.hx" module="StdTypes" extern="1">
+ <extends path="Float"/>
+ <haxe_doc>
+ The standard Int type. Its precision depends on the platform.
+</haxe_doc>
+ </class>
+ <typedef path="Null" params="T" file="/usr/lib/haxe/std/StdTypes.hx" module="StdTypes">
+ <c path="Null.T"/>
+ <haxe_doc>
+ [Null] can be useful in two cases. In order to document some methods
+ that accepts or can return a [null] value, or for the Flash9 compiler and AS3
+ generator to distinguish between base values that can be null and others that
+ can't.
+</haxe_doc>
+ </typedef>
+ <enum path="Bool" params="" file="/usr/lib/haxe/std/StdTypes.hx" module="StdTypes">
+ <true/>
+ <false/>
+ <haxe_doc>
+ The standard Boolean type is represented as an enum with two choices.
+</haxe_doc>
+ </enum>
+ <class path="Dynamic" params="T" file="/usr/lib/haxe/std/StdTypes.hx" module="StdTypes" extern="1"><haxe_doc>
+ Dynamic is an internal compiler type which has special behavior.
+ See the haXe language reference for more informations.
+</haxe_doc></class>
+ <typedef path="Iterator" params="T" file="/usr/lib/haxe/std/StdTypes.hx" module="StdTypes">
+ <a>
+ <next set="method"><f a=""><c path="Iterator.T"/></f></next>
+ <hasNext set="method"><f a=""><e path="Bool"/></f></hasNext>
+ </a>
+ <haxe_doc>
+ An Iterator is a structure that permits to list a given container
+ values. It can be used by your own data structures. See the haXe
+ documentation for more informations.
+</haxe_doc>
+ </typedef>
+ <typedef path="Iterable" params="T" file="/usr/lib/haxe/std/StdTypes.hx" module="StdTypes">
+ <a><iterator set="method"><f a=""><t path="Iterator"><c path="Iterable.T"/></t></f></iterator></a>
+ <haxe_doc>
+ An Iterable is a data structure which has an iterator() method.
+ See [Lambda] for generic functions on iterable structures.
+</haxe_doc>
+ </typedef>
+ <class path="ArrayAccess" params="T" file="/usr/lib/haxe/std/StdTypes.hx" module="StdTypes" extern="1" interface="1"><haxe_doc>
+ ArrayAccess is used to indicate a class that can be accessed using brackets.
+ The type parameter represent the type of the elements stored.
+</haxe_doc></class>
+ <class path="Math" params="" file="/usr/lib/haxe/std/php/_std/Math.hx">
+ <PI public="1" set="null" static="1"><c path="Float"/></PI>
+ <NaN public="1" set="null" static="1"><c path="Float"/></NaN>
+ <POSITIVE_INFINITY public="1" set="null" static="1"><c path="Float"/></POSITIVE_INFINITY>
+ <NEGATIVE_INFINITY public="1" set="null" static="1"><c path="Float"/></NEGATIVE_INFINITY>
+ <abs public="1" set="method" line="33" static="1"><f a="v">
+ <c path="Float"/>
+ <c path="Float"/>
+</f></abs>
+ <min public="1" set="method" line="34" static="1"><f a="a:b">
+ <c path="Float"/>
+ <c path=