Copy disabled (too large)
Download .txt
Showing preview only (41,454K chars total). Download the full file to get everything.
Repository: KLab/PlaygroundOSS
Branch: master
Commit: fec28ec43dae
Files: 2953
Total size: 38.7 MB
Directory structure:
gitextract_c2wkl9go/
├── .gitignore
├── .travis.yml
├── CSharpVersion/
│ ├── CSharp_CPPCompiler/
│ │ ├── CompilerProject/
│ │ │ ├── AbstractContainer.cpp
│ │ │ ├── AbstractContainer.h
│ │ │ ├── Accessor.cpp
│ │ │ ├── Attribute.cpp
│ │ │ ├── Attribute.h
│ │ │ ├── BaseType.h
│ │ │ ├── CompilerProject.cpp
│ │ │ ├── CompilerProject.sln
│ │ │ ├── CompilerProject.vcxproj
│ │ │ ├── CompilerProject.vcxproj.filters
│ │ │ ├── Dump.cpp
│ │ │ ├── Expression.cpp
│ │ │ ├── Expression.h
│ │ │ ├── Method.cpp
│ │ │ ├── NameSpace.cpp
│ │ │ ├── NameSpace.h
│ │ │ ├── Statement.cpp
│ │ │ ├── Statement.h
│ │ │ ├── Symbol.cpp
│ │ │ ├── Symbol.h
│ │ │ ├── TypeObject.cpp
│ │ │ ├── TypeObject.h
│ │ │ ├── UTF8Parse.h
│ │ │ ├── UTF8Parser.cpp
│ │ │ ├── Variable.cpp
│ │ │ ├── Variable.h
│ │ │ ├── bison.simple
│ │ │ ├── build.bat
│ │ │ ├── compilerLibrary.cpp
│ │ │ ├── compilerLibrary.h
│ │ │ ├── csharp.l
│ │ │ ├── csharp.y
│ │ │ ├── csharpcompiler.cpp
│ │ │ ├── csharpcompiler.cpp.output
│ │ │ ├── dirent.c
│ │ │ ├── dirent.h
│ │ │ ├── include.h
│ │ │ ├── lex.yy.h
│ │ │ ├── lexParser.inc
│ │ │ ├── stdafx.cpp
│ │ │ ├── stdafx.h
│ │ │ ├── supported.cs
│ │ │ ├── targetver.h
│ │ │ ├── unistd.h
│ │ │ └── y.tab.h
│ │ └── Compiler_Limitations.txt
│ ├── EnginePrototype/
│ │ ├── EnginePrototypeCS.csproj
│ │ ├── EnginePrototypeCS.sln
│ │ ├── FrameworkCore/
│ │ │ ├── CKLBException.cs
│ │ │ ├── GameObject.cs
│ │ │ ├── GameObjectFactory.cs
│ │ │ ├── NativeManagement.cs
│ │ │ ├── NodeIterator.cs
│ │ │ ├── Utils.cs
│ │ │ └── WrapperReg.cs
│ │ ├── Libs/
│ │ │ ├── CSAPP.cs
│ │ │ ├── CSAsset.cs
│ │ │ ├── CSBin.cs
│ │ │ ├── CSDB.cs
│ │ │ ├── CSData.cs
│ │ │ ├── CSDebug.cs
│ │ │ ├── CSEng.cs
│ │ │ ├── CSFont.cs
│ │ │ ├── CSGL.cs
│ │ │ ├── CSKey.cs
│ │ │ ├── CSLang.cs
│ │ │ ├── CSMatrix.cs
│ │ │ ├── CSRES.cs
│ │ │ ├── CSSound.cs
│ │ │ ├── CSSystem.cs
│ │ │ └── CSUI.cs
│ │ └── Wrappers/
│ │ ├── CKLBAsyncLoader.cs
│ │ ├── CKLBGenericTask.cs
│ │ ├── CKLBIntervalTimer.cs
│ │ ├── CKLBNetAPI.cs
│ │ ├── CKLBStoreService.cs
│ │ ├── CKLBTask.cs
│ │ ├── CKLBUICanvas.cs
│ │ ├── CKLBUIClip.cs
│ │ ├── CKLBUIControl.cs
│ │ ├── CKLBUIDebugItem.cs
│ │ ├── CKLBUIDragIcon.cs
│ │ ├── CKLBUIForm.cs
│ │ ├── CKLBUIFreeVertItem.cs
│ │ ├── CKLBUIGroup.cs
│ │ ├── CKLBUILabel.cs
│ │ ├── CKLBUIList.cs
│ │ ├── CKLBUIMoviePlayer.cs
│ │ ├── CKLBUIMultiImgItem.cs
│ │ ├── CKLBUIPieChart.cs
│ │ ├── CKLBUIPolyline.cs
│ │ ├── CKLBUIProgressBar.cs
│ │ ├── CKLBUIRubberBand.cs
│ │ ├── CKLBUISWFPlayer.cs
│ │ ├── CKLBUIScale9.cs
│ │ ├── CKLBUIScore.cs
│ │ ├── CKLBUIScrollBar.cs
│ │ ├── CKLBUISimpleItem.cs
│ │ ├── CKLBUITask.cs
│ │ ├── CKLBUITextInput.cs
│ │ ├── CKLBUITouchPad.cs
│ │ ├── CKLBUIVariableItem.cs
│ │ ├── CKLBUIVirtualDoc.cs
│ │ ├── CKLBUIWebArea.cs
│ │ └── IAmADocClass.cs
│ └── EnginePrototype.sln
├── Doc/
│ ├── Android_Build.md
│ ├── Documentation_CSharp.md
│ ├── Documentation_Libraries.md
│ ├── Documentation_Modules.md
│ ├── Documentation_Tasks.md
│ ├── How_to_run.md
│ ├── IPA_Font_License_Agreement_v1.0.txt
│ ├── LuaAPI/
│ │ ├── FAQ.html
│ │ ├── LIFECtrl.html
│ │ ├── ONLINE_Update.html
│ │ ├── PAUSECtrl.html
│ │ ├── README.md
│ │ ├── README_DOC.txt
│ │ ├── STORE_Service.html
│ │ ├── TASK_Generic.html
│ │ ├── UI_ActivityIndicator.html
│ │ ├── UI_Button.html
│ │ ├── UI_Clip.html
│ │ ├── UI_Control.html
│ │ ├── UI_DbgLabel.html
│ │ ├── UI_DragIcon.html
│ │ ├── UI_Form.html
│ │ ├── UI_FreeVertItem.html
│ │ ├── UI_Group.html
│ │ ├── UI_Label.html
│ │ ├── UI_List.html
│ │ ├── UI_MoviePlayer.html
│ │ ├── UI_MultiImgItem.html
│ │ ├── UI_PieChart.html
│ │ ├── UI_Polyline.html
│ │ ├── UI_ProgressBar.html
│ │ ├── UI_RubberBand.html
│ │ ├── UI_SWFPlayer.html
│ │ ├── UI_Score.html
│ │ ├── UI_ScrollBar.html
│ │ ├── UI_SimpleItem.html
│ │ ├── UI_TextInput.html
│ │ ├── UI_TouchPad.html
│ │ ├── UI_VariableItem.html
│ │ ├── UI_VirtualDoc.html
│ │ ├── UI_WebView.html
│ │ ├── UTIL_IntervalTimer.html
│ │ ├── assets/
│ │ │ ├── jquery.js
│ │ │ ├── search.js
│ │ │ ├── trac.css
│ │ │ ├── trac.js
│ │ │ └── wiki.css
│ │ ├── callbacks.html
│ │ ├── design_lua.html
│ │ ├── functions.html
│ │ ├── index.html
│ │ ├── modalstack.html
│ │ ├── properties.html
│ │ └── tree.html
│ ├── Modules/
│ │ ├── Allocators.txt
│ │ ├── Asset_Stream_Format/
│ │ │ ├── Asset_Naming_Convention.txt
│ │ │ ├── TEXB_stream_format.txt
│ │ │ └── TIMG_stream_format.txt
│ │ ├── Assets.txt
│ │ ├── Audio.txt
│ │ ├── Encryption.txt
│ │ ├── FileSystem.txt
│ │ ├── Network.txt
│ │ ├── Rendering.txt
│ │ ├── SceneGraph.txt
│ │ ├── Scripting.txt
│ │ └── Tasks.txt
│ ├── Project.md
│ ├── SysCommandsList.xls
│ └── Toboggan/
│ ├── README.md
│ ├── Toboggan_Operation_Manual_JPN.docx
│ └── Toboggan_Plugin_Manual_JPN.docx
├── Engine/
│ ├── include/
│ │ ├── BaseType.h
│ │ ├── FileSystem.h
│ │ ├── ITmpFile.h
│ │ ├── OSWidget.h
│ │ ├── assert_klb.h
│ │ └── klb_vararg.h
│ ├── libs/
│ │ ├── JSonParser/
│ │ │ ├── api/
│ │ │ │ ├── yajl_common.h
│ │ │ │ ├── yajl_gen.h
│ │ │ │ ├── yajl_parse.h
│ │ │ │ └── yajl_tree.h
│ │ │ ├── important.txt
│ │ │ ├── json_binary_parser.c
│ │ │ ├── msg_pack_parser.c
│ │ │ ├── yajl.c
│ │ │ ├── yajl_alloc.c
│ │ │ ├── yajl_alloc.h
│ │ │ ├── yajl_assert.h
│ │ │ ├── yajl_buf.c
│ │ │ ├── yajl_buf.h
│ │ │ ├── yajl_bytestack.h
│ │ │ ├── yajl_encode.c
│ │ │ ├── yajl_encode.h
│ │ │ ├── yajl_gen.c
│ │ │ ├── yajl_lex.c
│ │ │ ├── yajl_lex.h
│ │ │ ├── yajl_parser.c
│ │ │ ├── yajl_parser.h
│ │ │ ├── yajl_tree.c
│ │ │ └── yajl_version.c
│ │ ├── RuntimeCSharp/
│ │ │ ├── CompilerProject/
│ │ │ │ └── BaseType.h
│ │ │ └── RuntimeLibrary/
│ │ │ ├── CS_Array.cpp
│ │ │ ├── CS_Array.h
│ │ │ ├── CS_Console.cpp
│ │ │ ├── CS_Console.h
│ │ │ ├── CS_Exception.cpp
│ │ │ ├── CS_Marshal.h
│ │ │ ├── CS_Math.h
│ │ │ ├── CS_Memory.cpp
│ │ │ ├── CS_Memory.h
│ │ │ ├── CS_Object.cpp
│ │ │ ├── CS_Object.h
│ │ │ ├── CS_String.cpp
│ │ │ ├── CS_String.h
│ │ │ ├── CS_System.cpp
│ │ │ ├── CS_System.h
│ │ │ ├── Collections/
│ │ │ │ ├── Collections.h
│ │ │ │ └── Generic/
│ │ │ │ ├── CS_Dictionary.cpp
│ │ │ │ ├── CS_Dictionary.h
│ │ │ │ ├── CS_List.cpp
│ │ │ │ ├── CS_List.h
│ │ │ │ └── Generic.h
│ │ │ ├── InternalUtils.cpp
│ │ │ ├── InternalUtils.h
│ │ │ ├── MarshallingUtils.cpp
│ │ │ ├── MarshallingUtils.h
│ │ │ ├── RuntimeCSharp.sln
│ │ │ ├── RuntimeCSharp.vcxproj
│ │ │ ├── TestSuite/
│ │ │ │ ├── MemoryTests.cpp
│ │ │ │ └── MemoryTests.h
│ │ │ ├── inline/
│ │ │ │ ├── __InternalUtilsGetTypeID_specializations.inl
│ │ │ │ └── classPrototypes.inl
│ │ │ ├── main.cpp
│ │ │ ├── stdafx.cpp
│ │ │ ├── stdafx.h
│ │ │ └── targetver.h
│ │ ├── SQLite/
│ │ │ ├── sqlite3.c
│ │ │ ├── sqlite3.h
│ │ │ └── sqlite3ext.h
│ │ ├── Tremolo/
│ │ │ ├── asm_arm.h
│ │ │ ├── bitwise.c
│ │ │ ├── bitwiseARM.s
│ │ │ ├── codebook.c
│ │ │ ├── codebook.h
│ │ │ ├── codec_internal.h
│ │ │ ├── config_types.h
│ │ │ ├── dpen.s
│ │ │ ├── dsp.c
│ │ │ ├── floor0.c
│ │ │ ├── floor1.c
│ │ │ ├── floor1ARM.s
│ │ │ ├── floor1LARM.s
│ │ │ ├── floor_lookup.c
│ │ │ ├── framing.c
│ │ │ ├── ivorbiscodec.h
│ │ │ ├── ivorbisfile.h
│ │ │ ├── lsp_lookup.h
│ │ │ ├── mapping0.c
│ │ │ ├── mdct.c
│ │ │ ├── mdct.h
│ │ │ ├── mdctARM.s
│ │ │ ├── mdctLARM.s
│ │ │ ├── mdct_lookup.h
│ │ │ ├── misc.c
│ │ │ ├── misc.h
│ │ │ ├── ogg.h
│ │ │ ├── os.h
│ │ │ ├── os_types.h
│ │ │ ├── res012.c
│ │ │ ├── treminfo.c
│ │ │ ├── vorbisfile.c
│ │ │ └── window_lookup.h
│ │ ├── curl-7.29.0-minimal/
│ │ │ ├── include/
│ │ │ │ └── curl/
│ │ │ │ ├── curl.h
│ │ │ │ ├── curlbuild.h
│ │ │ │ ├── curlbuild.h.in
│ │ │ │ ├── curlrules.h
│ │ │ │ ├── curlver.h
│ │ │ │ ├── easy.h
│ │ │ │ ├── mprintf.h
│ │ │ │ ├── multi.h
│ │ │ │ ├── stdcheaders.h
│ │ │ │ └── typecheck-gcc.h
│ │ │ ├── lib/
│ │ │ │ ├── amigaos.c
│ │ │ │ ├── amigaos.h
│ │ │ │ ├── arpa_telnet.h
│ │ │ │ ├── asyn-ares.c
│ │ │ │ ├── asyn-thread.c
│ │ │ │ ├── asyn.h
│ │ │ │ ├── axtls.c
│ │ │ │ ├── axtls.h
│ │ │ │ ├── base64.c
│ │ │ │ ├── bundles.c
│ │ │ │ ├── bundles.h
│ │ │ │ ├── config-amigaos.h
│ │ │ │ ├── config-dos.h
│ │ │ │ ├── config-mac.h
│ │ │ │ ├── config-os400.h
│ │ │ │ ├── config-riscos.h
│ │ │ │ ├── config-symbian.h
│ │ │ │ ├── config-tpf.h
│ │ │ │ ├── config-vxworks.h
│ │ │ │ ├── config-win32.h
│ │ │ │ ├── config-win32ce.h
│ │ │ │ ├── conncache.c
│ │ │ │ ├── conncache.h
│ │ │ │ ├── connect.c
│ │ │ │ ├── connect.h
│ │ │ │ ├── content_encoding.c
│ │ │ │ ├── content_encoding.h
│ │ │ │ ├── cookie.c
│ │ │ │ ├── cookie.h
│ │ │ │ ├── curl_addrinfo.c
│ │ │ │ ├── curl_addrinfo.h
│ │ │ │ ├── curl_base64.h
│ │ │ │ ├── curl_config.h.in
│ │ │ │ ├── curl_darwinssl.c
│ │ │ │ ├── curl_darwinssl.h
│ │ │ │ ├── curl_fnmatch.c
│ │ │ │ ├── curl_fnmatch.h
│ │ │ │ ├── curl_gethostname.c
│ │ │ │ ├── curl_gethostname.h
│ │ │ │ ├── curl_gssapi.c
│ │ │ │ ├── curl_gssapi.h
│ │ │ │ ├── curl_hmac.h
│ │ │ │ ├── curl_ldap.h
│ │ │ │ ├── curl_md4.h
│ │ │ │ ├── curl_md5.h
│ │ │ │ ├── curl_memory.h
│ │ │ │ ├── curl_memrchr.c
│ │ │ │ ├── curl_memrchr.h
│ │ │ │ ├── curl_multibyte.c
│ │ │ │ ├── curl_multibyte.h
│ │ │ │ ├── curl_ntlm.c
│ │ │ │ ├── curl_ntlm.h
│ │ │ │ ├── curl_ntlm_core.c
│ │ │ │ ├── curl_ntlm_core.h
│ │ │ │ ├── curl_ntlm_msgs.c
│ │ │ │ ├── curl_ntlm_msgs.h
│ │ │ │ ├── curl_ntlm_wb.c
│ │ │ │ ├── curl_ntlm_wb.h
│ │ │ │ ├── curl_rand.c
│ │ │ │ ├── curl_rand.h
│ │ │ │ ├── curl_rtmp.c
│ │ │ │ ├── curl_rtmp.h
│ │ │ │ ├── curl_sasl.c
│ │ │ │ ├── curl_sasl.h
│ │ │ │ ├── curl_schannel.c
│ │ │ │ ├── curl_schannel.h
│ │ │ │ ├── curl_setup.h
│ │ │ │ ├── curl_setup_once.h
│ │ │ │ ├── curl_sspi.c
│ │ │ │ ├── curl_sspi.h
│ │ │ │ ├── curl_threads.c
│ │ │ │ ├── curl_threads.h
│ │ │ │ ├── curlx.h
│ │ │ │ ├── cyassl.c
│ │ │ │ ├── cyassl.h
│ │ │ │ ├── dict.c
│ │ │ │ ├── dict.h
│ │ │ │ ├── easy.c
│ │ │ │ ├── easyif.h
│ │ │ │ ├── escape.c
│ │ │ │ ├── escape.h
│ │ │ │ ├── file.c
│ │ │ │ ├── file.h
│ │ │ │ ├── fileinfo.c
│ │ │ │ ├── fileinfo.h
│ │ │ │ ├── formdata.c
│ │ │ │ ├── formdata.h
│ │ │ │ ├── ftp.c
│ │ │ │ ├── ftp.h
│ │ │ │ ├── ftplistparser.c
│ │ │ │ ├── ftplistparser.h
│ │ │ │ ├── getenv.c
│ │ │ │ ├── getinfo.c
│ │ │ │ ├── getinfo.h
│ │ │ │ ├── gopher.c
│ │ │ │ ├── gopher.h
│ │ │ │ ├── gtls.c
│ │ │ │ ├── gtls.h
│ │ │ │ ├── hash.c
│ │ │ │ ├── hash.h
│ │ │ │ ├── hmac.c
│ │ │ │ ├── hostasyn.c
│ │ │ │ ├── hostcheck.c
│ │ │ │ ├── hostcheck.h
│ │ │ │ ├── hostip.c
│ │ │ │ ├── hostip.h
│ │ │ │ ├── hostip4.c
│ │ │ │ ├── hostip6.c
│ │ │ │ ├── hostsyn.c
│ │ │ │ ├── http.c
│ │ │ │ ├── http.h
│ │ │ │ ├── http_chunks.c
│ │ │ │ ├── http_chunks.h
│ │ │ │ ├── http_digest.c
│ │ │ │ ├── http_digest.h
│ │ │ │ ├── http_negotiate.c
│ │ │ │ ├── http_negotiate.h
│ │ │ │ ├── http_negotiate_sspi.c
│ │ │ │ ├── http_proxy.c
│ │ │ │ ├── http_proxy.h
│ │ │ │ ├── idn_win32.c
│ │ │ │ ├── if2ip.c
│ │ │ │ ├── if2ip.h
│ │ │ │ ├── imap.c
│ │ │ │ ├── imap.h
│ │ │ │ ├── inet_ntop.c
│ │ │ │ ├── inet_ntop.h
│ │ │ │ ├── inet_pton.c
│ │ │ │ ├── inet_pton.h
│ │ │ │ ├── krb4.c
│ │ │ │ ├── krb4.h
│ │ │ │ ├── krb5.c
│ │ │ │ ├── ldap.c
│ │ │ │ ├── libcurl.vers.in
│ │ │ │ ├── llist.c
│ │ │ │ ├── llist.h
│ │ │ │ ├── md4.c
│ │ │ │ ├── md5.c
│ │ │ │ ├── memdebug.c
│ │ │ │ ├── memdebug.h
│ │ │ │ ├── mprintf.c
│ │ │ │ ├── multi.c
│ │ │ │ ├── multihandle.h
│ │ │ │ ├── multiif.h
│ │ │ │ ├── netrc.c
│ │ │ │ ├── netrc.h
│ │ │ │ ├── non-ascii.c
│ │ │ │ ├── non-ascii.h
│ │ │ │ ├── nonblock.c
│ │ │ │ ├── nonblock.h
│ │ │ │ ├── nss.c
│ │ │ │ ├── nssg.h
│ │ │ │ ├── nwlib.c
│ │ │ │ ├── nwos.c
│ │ │ │ ├── objnames.inc
│ │ │ │ ├── openldap.c
│ │ │ │ ├── parsedate.c
│ │ │ │ ├── parsedate.h
│ │ │ │ ├── pingpong.c
│ │ │ │ ├── pingpong.h
│ │ │ │ ├── polarssl.c
│ │ │ │ ├── polarssl.h
│ │ │ │ ├── pop3.c
│ │ │ │ ├── pop3.h
│ │ │ │ ├── progress.c
│ │ │ │ ├── progress.h
│ │ │ │ ├── qssl.c
│ │ │ │ ├── qssl.h
│ │ │ │ ├── rawstr.c
│ │ │ │ ├── rawstr.h
│ │ │ │ ├── rtsp.c
│ │ │ │ ├── rtsp.h
│ │ │ │ ├── security.c
│ │ │ │ ├── select.c
│ │ │ │ ├── select.h
│ │ │ │ ├── sendf.c
│ │ │ │ ├── sendf.h
│ │ │ │ ├── setup-os400.h
│ │ │ │ ├── setup-vms.h
│ │ │ │ ├── share.c
│ │ │ │ ├── share_curl.h
│ │ │ │ ├── slist.c
│ │ │ │ ├── slist.h
│ │ │ │ ├── smtp.c
│ │ │ │ ├── smtp.h
│ │ │ │ ├── sockaddr.h
│ │ │ │ ├── socks.c
│ │ │ │ ├── socks.h
│ │ │ │ ├── socks_gssapi.c
│ │ │ │ ├── socks_sspi.c
│ │ │ │ ├── speedcheck.c
│ │ │ │ ├── speedcheck.h
│ │ │ │ ├── splay.c
│ │ │ │ ├── splay.h
│ │ │ │ ├── ssh.c
│ │ │ │ ├── ssh.h
│ │ │ │ ├── sslgen.c
│ │ │ │ ├── sslgen.h
│ │ │ │ ├── ssluse.c
│ │ │ │ ├── ssluse.h
│ │ │ │ ├── strdup.c
│ │ │ │ ├── strdup.h
│ │ │ │ ├── strequal.c
│ │ │ │ ├── strequal.h
│ │ │ │ ├── strerror.c
│ │ │ │ ├── strerror.h
│ │ │ │ ├── strtok.c
│ │ │ │ ├── strtok.h
│ │ │ │ ├── strtoofft.c
│ │ │ │ ├── strtoofft.h
│ │ │ │ ├── telnet.c
│ │ │ │ ├── telnet.h
│ │ │ │ ├── tftp.c
│ │ │ │ ├── tftp.h
│ │ │ │ ├── timeval.c
│ │ │ │ ├── timeval.h
│ │ │ │ ├── transfer.c
│ │ │ │ ├── transfer.h
│ │ │ │ ├── url.c
│ │ │ │ ├── url.h
│ │ │ │ ├── urldata.h
│ │ │ │ ├── version.c
│ │ │ │ ├── warnless.c
│ │ │ │ ├── warnless.h
│ │ │ │ ├── wildcard.c
│ │ │ │ └── wildcard.h
│ │ │ └── src/
│ │ │ ├── tool_binmode.c
│ │ │ ├── tool_binmode.h
│ │ │ ├── tool_bname.c
│ │ │ ├── tool_bname.h
│ │ │ ├── tool_cb_dbg.c
│ │ │ ├── tool_cb_dbg.h
│ │ │ ├── tool_cb_hdr.c
│ │ │ ├── tool_cb_hdr.h
│ │ │ ├── tool_cb_prg.c
│ │ │ ├── tool_cb_prg.h
│ │ │ ├── tool_cb_rea.c
│ │ │ ├── tool_cb_rea.h
│ │ │ ├── tool_cb_see.c
│ │ │ ├── tool_cb_see.h
│ │ │ ├── tool_cb_wrt.c
│ │ │ ├── tool_cb_wrt.h
│ │ │ ├── tool_cfgable.c
│ │ │ ├── tool_cfgable.h
│ │ │ ├── tool_convert.c
│ │ │ ├── tool_convert.h
│ │ │ ├── tool_dirhie.c
│ │ │ ├── tool_dirhie.h
│ │ │ ├── tool_doswin.c
│ │ │ ├── tool_doswin.h
│ │ │ ├── tool_easysrc.c
│ │ │ ├── tool_easysrc.h
│ │ │ ├── tool_formparse.c
│ │ │ ├── tool_formparse.h
│ │ │ ├── tool_getparam.c
│ │ │ ├── tool_getparam.h
│ │ │ ├── tool_getpass.c
│ │ │ ├── tool_getpass.h
│ │ │ ├── tool_help.c
│ │ │ ├── tool_help.h
│ │ │ ├── tool_helpers.c
│ │ │ ├── tool_helpers.h
│ │ │ ├── tool_homedir.c
│ │ │ ├── tool_homedir.h
│ │ │ ├── tool_hugehelp.c
│ │ │ ├── tool_hugehelp.h
│ │ │ ├── tool_libinfo.c
│ │ │ ├── tool_libinfo.h
│ │ │ ├── tool_main.c
│ │ │ ├── tool_main.h
│ │ │ ├── tool_metalink.c
│ │ │ ├── tool_metalink.h
│ │ │ ├── tool_mfiles.c
│ │ │ ├── tool_mfiles.h
│ │ │ ├── tool_msgs.c
│ │ │ ├── tool_msgs.h
│ │ │ ├── tool_operate.c
│ │ │ ├── tool_operate.h
│ │ │ ├── tool_operhlp.c
│ │ │ ├── tool_operhlp.h
│ │ │ ├── tool_panykey.c
│ │ │ ├── tool_panykey.h
│ │ │ ├── tool_paramhlp.c
│ │ │ ├── tool_paramhlp.h
│ │ │ ├── tool_parsecfg.c
│ │ │ ├── tool_parsecfg.h
│ │ │ ├── tool_sdecls.h
│ │ │ ├── tool_setopt.c
│ │ │ ├── tool_setopt.h
│ │ │ ├── tool_setup.h
│ │ │ ├── tool_sleep.c
│ │ │ ├── tool_sleep.h
│ │ │ ├── tool_urlglob.c
│ │ │ ├── tool_urlglob.h
│ │ │ ├── tool_util.c
│ │ │ ├── tool_util.h
│ │ │ ├── tool_version.h
│ │ │ ├── tool_vms.c
│ │ │ ├── tool_vms.h
│ │ │ ├── tool_writeenv.c
│ │ │ ├── tool_writeenv.h
│ │ │ ├── tool_writeout.c
│ │ │ ├── tool_writeout.h
│ │ │ ├── tool_xattr.c
│ │ │ ├── tool_xattr.h
│ │ │ └── version.h
│ │ ├── freeType/
│ │ │ ├── include/
│ │ │ │ ├── freetype/
│ │ │ │ │ ├── config/
│ │ │ │ │ │ ├── ftconfig.h
│ │ │ │ │ │ ├── ftheader.h
│ │ │ │ │ │ ├── ftmodule.h
│ │ │ │ │ │ ├── ftoption.h
│ │ │ │ │ │ └── ftstdlib.h
│ │ │ │ │ ├── freetype.h
│ │ │ │ │ ├── ftadvanc.h
│ │ │ │ │ ├── ftautoh.h
│ │ │ │ │ ├── ftbbox.h
│ │ │ │ │ ├── ftbdf.h
│ │ │ │ │ ├── ftbitmap.h
│ │ │ │ │ ├── ftbzip2.h
│ │ │ │ │ ├── ftcache.h
│ │ │ │ │ ├── ftchapters.h
│ │ │ │ │ ├── ftcid.h
│ │ │ │ │ ├── fterrdef.h
│ │ │ │ │ ├── fterrors.h
│ │ │ │ │ ├── ftgasp.h
│ │ │ │ │ ├── ftglyph.h
│ │ │ │ │ ├── ftgxval.h
│ │ │ │ │ ├── ftgzip.h
│ │ │ │ │ ├── ftimage.h
│ │ │ │ │ ├── ftincrem.h
│ │ │ │ │ ├── ftlcdfil.h
│ │ │ │ │ ├── ftlist.h
│ │ │ │ │ ├── ftlzw.h
│ │ │ │ │ ├── ftmac.h
│ │ │ │ │ ├── ftmm.h
│ │ │ │ │ ├── ftmodapi.h
│ │ │ │ │ ├── ftmoderr.h
│ │ │ │ │ ├── ftotval.h
│ │ │ │ │ ├── ftoutln.h
│ │ │ │ │ ├── ftpfr.h
│ │ │ │ │ ├── ftrender.h
│ │ │ │ │ ├── ftsizes.h
│ │ │ │ │ ├── ftsnames.h
│ │ │ │ │ ├── ftstroke.h
│ │ │ │ │ ├── ftsynth.h
│ │ │ │ │ ├── ftsystem.h
│ │ │ │ │ ├── fttrigon.h
│ │ │ │ │ ├── fttypes.h
│ │ │ │ │ ├── ftwinfnt.h
│ │ │ │ │ ├── ftxf86.h
│ │ │ │ │ ├── internal/
│ │ │ │ │ │ ├── autohint.h
│ │ │ │ │ │ ├── ftcalc.h
│ │ │ │ │ │ ├── ftdebug.h
│ │ │ │ │ │ ├── ftdriver.h
│ │ │ │ │ │ ├── ftgloadr.h
│ │ │ │ │ │ ├── ftmemory.h
│ │ │ │ │ │ ├── ftobjs.h
│ │ │ │ │ │ ├── ftpic.h
│ │ │ │ │ │ ├── ftrfork.h
│ │ │ │ │ │ ├── ftserv.h
│ │ │ │ │ │ ├── ftstream.h
│ │ │ │ │ │ ├── fttrace.h
│ │ │ │ │ │ ├── ftvalid.h
│ │ │ │ │ │ ├── internal.h
│ │ │ │ │ │ ├── psaux.h
│ │ │ │ │ │ ├── pshints.h
│ │ │ │ │ │ ├── services/
│ │ │ │ │ │ │ ├── svbdf.h
│ │ │ │ │ │ │ ├── svcid.h
│ │ │ │ │ │ │ ├── svgldict.h
│ │ │ │ │ │ │ ├── svgxval.h
│ │ │ │ │ │ │ ├── svkern.h
│ │ │ │ │ │ │ ├── svmm.h
│ │ │ │ │ │ │ ├── svotval.h
│ │ │ │ │ │ │ ├── svpfr.h
│ │ │ │ │ │ │ ├── svpostnm.h
│ │ │ │ │ │ │ ├── svprop.h
│ │ │ │ │ │ │ ├── svpscmap.h
│ │ │ │ │ │ │ ├── svpsinfo.h
│ │ │ │ │ │ │ ├── svsfnt.h
│ │ │ │ │ │ │ ├── svttcmap.h
│ │ │ │ │ │ │ ├── svtteng.h
│ │ │ │ │ │ │ ├── svttglyf.h
│ │ │ │ │ │ │ ├── svwinfnt.h
│ │ │ │ │ │ │ └── svxf86nm.h
│ │ │ │ │ │ ├── sfnt.h
│ │ │ │ │ │ ├── t1types.h
│ │ │ │ │ │ └── tttypes.h
│ │ │ │ │ ├── t1tables.h
│ │ │ │ │ ├── ttnameid.h
│ │ │ │ │ ├── tttables.h
│ │ │ │ │ ├── tttags.h
│ │ │ │ │ └── ttunpat.h
│ │ │ │ └── ft2build.h
│ │ │ └── src/
│ │ │ ├── Jamfile
│ │ │ ├── autofit/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── afangles.c
│ │ │ │ ├── afangles.h
│ │ │ │ ├── afcjk.c
│ │ │ │ ├── afcjk.h
│ │ │ │ ├── afdummy.c
│ │ │ │ ├── afdummy.h
│ │ │ │ ├── aferrors.h
│ │ │ │ ├── afglobal.c
│ │ │ │ ├── afglobal.h
│ │ │ │ ├── afhints.c
│ │ │ │ ├── afhints.h
│ │ │ │ ├── afindic.c
│ │ │ │ ├── afindic.h
│ │ │ │ ├── aflatin.c
│ │ │ │ ├── aflatin.h
│ │ │ │ ├── aflatin2.c
│ │ │ │ ├── aflatin2.h
│ │ │ │ ├── afloader.c
│ │ │ │ ├── afloader.h
│ │ │ │ ├── afmodule.c
│ │ │ │ ├── afmodule.h
│ │ │ │ ├── afpic.c
│ │ │ │ ├── afpic.h
│ │ │ │ ├── aftypes.h
│ │ │ │ ├── afwarp.c
│ │ │ │ ├── afwarp.h
│ │ │ │ ├── autofit.c
│ │ │ │ ├── module.mk
│ │ │ │ └── rules.mk
│ │ │ ├── base/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── basepic.c
│ │ │ │ ├── basepic.h
│ │ │ │ ├── ftadvanc.c
│ │ │ │ ├── ftapi.c
│ │ │ │ ├── ftbase.c
│ │ │ │ ├── ftbase.h
│ │ │ │ ├── ftbbox.c
│ │ │ │ ├── ftbdf.c
│ │ │ │ ├── ftbitmap.c
│ │ │ │ ├── ftcalc.c
│ │ │ │ ├── ftcid.c
│ │ │ │ ├── ftdbgmem.c
│ │ │ │ ├── ftdebug.c
│ │ │ │ ├── ftfstype.c
│ │ │ │ ├── ftgasp.c
│ │ │ │ ├── ftgloadr.c
│ │ │ │ ├── ftglyph.c
│ │ │ │ ├── ftgxval.c
│ │ │ │ ├── ftinit.c
│ │ │ │ ├── ftlcdfil.c
│ │ │ │ ├── ftmac.c
│ │ │ │ ├── ftmm.c
│ │ │ │ ├── ftobjs.c
│ │ │ │ ├── ftotval.c
│ │ │ │ ├── ftoutln.c
│ │ │ │ ├── ftpatent.c
│ │ │ │ ├── ftpfr.c
│ │ │ │ ├── ftpic.c
│ │ │ │ ├── ftrfork.c
│ │ │ │ ├── ftsnames.c
│ │ │ │ ├── ftstream.c
│ │ │ │ ├── ftstroke.c
│ │ │ │ ├── ftsynth.c
│ │ │ │ ├── ftsystem.c
│ │ │ │ ├── fttrigon.c
│ │ │ │ ├── fttype1.c
│ │ │ │ ├── ftutil.c
│ │ │ │ ├── ftwinfnt.c
│ │ │ │ ├── ftxf86.c
│ │ │ │ └── rules.mk
│ │ │ ├── bdf/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── README
│ │ │ │ ├── bdf.c
│ │ │ │ ├── bdf.h
│ │ │ │ ├── bdfdrivr.c
│ │ │ │ ├── bdfdrivr.h
│ │ │ │ ├── bdferror.h
│ │ │ │ ├── bdflib.c
│ │ │ │ ├── module.mk
│ │ │ │ └── rules.mk
│ │ │ ├── bzip2/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── ftbzip2.c
│ │ │ │ └── rules.mk
│ │ │ ├── cache/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── ftcache.c
│ │ │ │ ├── ftcbasic.c
│ │ │ │ ├── ftccache.c
│ │ │ │ ├── ftccache.h
│ │ │ │ ├── ftccback.h
│ │ │ │ ├── ftccmap.c
│ │ │ │ ├── ftcerror.h
│ │ │ │ ├── ftcglyph.c
│ │ │ │ ├── ftcglyph.h
│ │ │ │ ├── ftcimage.c
│ │ │ │ ├── ftcimage.h
│ │ │ │ ├── ftcmanag.c
│ │ │ │ ├── ftcmanag.h
│ │ │ │ ├── ftcmru.c
│ │ │ │ ├── ftcmru.h
│ │ │ │ ├── ftcsbits.c
│ │ │ │ ├── ftcsbits.h
│ │ │ │ └── rules.mk
│ │ │ ├── cff/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── cff.c
│ │ │ │ ├── cffcmap.c
│ │ │ │ ├── cffcmap.h
│ │ │ │ ├── cffdrivr.c
│ │ │ │ ├── cffdrivr.h
│ │ │ │ ├── cfferrs.h
│ │ │ │ ├── cffgload.c
│ │ │ │ ├── cffgload.h
│ │ │ │ ├── cffload.c
│ │ │ │ ├── cffload.h
│ │ │ │ ├── cffobjs.c
│ │ │ │ ├── cffobjs.h
│ │ │ │ ├── cffparse.c
│ │ │ │ ├── cffparse.h
│ │ │ │ ├── cffpic.c
│ │ │ │ ├── cffpic.h
│ │ │ │ ├── cfftoken.h
│ │ │ │ ├── cfftypes.h
│ │ │ │ ├── module.mk
│ │ │ │ └── rules.mk
│ │ │ ├── cid/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── ciderrs.h
│ │ │ │ ├── cidgload.c
│ │ │ │ ├── cidgload.h
│ │ │ │ ├── cidload.c
│ │ │ │ ├── cidload.h
│ │ │ │ ├── cidobjs.c
│ │ │ │ ├── cidobjs.h
│ │ │ │ ├── cidparse.c
│ │ │ │ ├── cidparse.h
│ │ │ │ ├── cidriver.c
│ │ │ │ ├── cidriver.h
│ │ │ │ ├── cidtoken.h
│ │ │ │ ├── module.mk
│ │ │ │ ├── rules.mk
│ │ │ │ └── type1cid.c
│ │ │ ├── ftdebug.c
│ │ │ ├── gxvalid/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── README
│ │ │ │ ├── gxvalid.c
│ │ │ │ ├── gxvalid.h
│ │ │ │ ├── gxvbsln.c
│ │ │ │ ├── gxvcommn.c
│ │ │ │ ├── gxvcommn.h
│ │ │ │ ├── gxverror.h
│ │ │ │ ├── gxvfeat.c
│ │ │ │ ├── gxvfeat.h
│ │ │ │ ├── gxvfgen.c
│ │ │ │ ├── gxvjust.c
│ │ │ │ ├── gxvkern.c
│ │ │ │ ├── gxvlcar.c
│ │ │ │ ├── gxvmod.c
│ │ │ │ ├── gxvmod.h
│ │ │ │ ├── gxvmort.c
│ │ │ │ ├── gxvmort.h
│ │ │ │ ├── gxvmort0.c
│ │ │ │ ├── gxvmort1.c
│ │ │ │ ├── gxvmort2.c
│ │ │ │ ├── gxvmort4.c
│ │ │ │ ├── gxvmort5.c
│ │ │ │ ├── gxvmorx.c
│ │ │ │ ├── gxvmorx.h
│ │ │ │ ├── gxvmorx0.c
│ │ │ │ ├── gxvmorx1.c
│ │ │ │ ├── gxvmorx2.c
│ │ │ │ ├── gxvmorx4.c
│ │ │ │ ├── gxvmorx5.c
│ │ │ │ ├── gxvopbd.c
│ │ │ │ ├── gxvprop.c
│ │ │ │ ├── gxvtrak.c
│ │ │ │ ├── module.mk
│ │ │ │ └── rules.mk
│ │ │ ├── gzip/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── adler32.c
│ │ │ │ ├── ftgzip.c
│ │ │ │ ├── infblock.c
│ │ │ │ ├── infblock.h
│ │ │ │ ├── infcodes.c
│ │ │ │ ├── infcodes.h
│ │ │ │ ├── inffixed.h
│ │ │ │ ├── inflate.c
│ │ │ │ ├── inftrees.c
│ │ │ │ ├── inftrees.h
│ │ │ │ ├── infutil.c
│ │ │ │ ├── infutil.h
│ │ │ │ ├── rules.mk
│ │ │ │ ├── zconf.h
│ │ │ │ ├── zlib.h
│ │ │ │ ├── zutil.c
│ │ │ │ └── zutil.h
│ │ │ ├── lzw/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── ftlzw.c
│ │ │ │ ├── ftzopen.c
│ │ │ │ ├── ftzopen.h
│ │ │ │ └── rules.mk
│ │ │ ├── otvalid/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── otvalid.c
│ │ │ │ ├── otvalid.h
│ │ │ │ ├── otvbase.c
│ │ │ │ ├── otvcommn.c
│ │ │ │ ├── otvcommn.h
│ │ │ │ ├── otverror.h
│ │ │ │ ├── otvgdef.c
│ │ │ │ ├── otvgpos.c
│ │ │ │ ├── otvgpos.h
│ │ │ │ ├── otvgsub.c
│ │ │ │ ├── otvjstf.c
│ │ │ │ ├── otvmath.c
│ │ │ │ ├── otvmod.c
│ │ │ │ ├── otvmod.h
│ │ │ │ └── rules.mk
│ │ │ ├── pcf/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── README
│ │ │ │ ├── module.mk
│ │ │ │ ├── pcf.c
│ │ │ │ ├── pcf.h
│ │ │ │ ├── pcfdrivr.c
│ │ │ │ ├── pcfdrivr.h
│ │ │ │ ├── pcferror.h
│ │ │ │ ├── pcfread.c
│ │ │ │ ├── pcfread.h
│ │ │ │ ├── pcfutil.c
│ │ │ │ ├── pcfutil.h
│ │ │ │ └── rules.mk
│ │ │ ├── pfr/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── pfr.c
│ │ │ │ ├── pfrcmap.c
│ │ │ │ ├── pfrcmap.h
│ │ │ │ ├── pfrdrivr.c
│ │ │ │ ├── pfrdrivr.h
│ │ │ │ ├── pfrerror.h
│ │ │ │ ├── pfrgload.c
│ │ │ │ ├── pfrgload.h
│ │ │ │ ├── pfrload.c
│ │ │ │ ├── pfrload.h
│ │ │ │ ├── pfrobjs.c
│ │ │ │ ├── pfrobjs.h
│ │ │ │ ├── pfrsbit.c
│ │ │ │ ├── pfrsbit.h
│ │ │ │ ├── pfrtypes.h
│ │ │ │ └── rules.mk
│ │ │ ├── psaux/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── afmparse.c
│ │ │ │ ├── afmparse.h
│ │ │ │ ├── module.mk
│ │ │ │ ├── psaux.c
│ │ │ │ ├── psauxerr.h
│ │ │ │ ├── psauxmod.c
│ │ │ │ ├── psauxmod.h
│ │ │ │ ├── psconv.c
│ │ │ │ ├── psconv.h
│ │ │ │ ├── psobjs.c
│ │ │ │ ├── psobjs.h
│ │ │ │ ├── rules.mk
│ │ │ │ ├── t1cmap.c
│ │ │ │ ├── t1cmap.h
│ │ │ │ ├── t1decode.c
│ │ │ │ └── t1decode.h
│ │ │ ├── pshinter/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── pshalgo.c
│ │ │ │ ├── pshalgo.h
│ │ │ │ ├── pshglob.c
│ │ │ │ ├── pshglob.h
│ │ │ │ ├── pshinter.c
│ │ │ │ ├── pshmod.c
│ │ │ │ ├── pshmod.h
│ │ │ │ ├── pshnterr.h
│ │ │ │ ├── pshpic.c
│ │ │ │ ├── pshpic.h
│ │ │ │ ├── pshrec.c
│ │ │ │ ├── pshrec.h
│ │ │ │ └── rules.mk
│ │ │ ├── psnames/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── psmodule.c
│ │ │ │ ├── psmodule.h
│ │ │ │ ├── psnamerr.h
│ │ │ │ ├── psnames.c
│ │ │ │ ├── pspic.c
│ │ │ │ ├── pspic.h
│ │ │ │ ├── pstables.h
│ │ │ │ └── rules.mk
│ │ │ ├── raster/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── ftmisc.h
│ │ │ │ ├── ftraster.c
│ │ │ │ ├── ftraster.h
│ │ │ │ ├── ftrend1.c
│ │ │ │ ├── ftrend1.h
│ │ │ │ ├── module.mk
│ │ │ │ ├── raster.c
│ │ │ │ ├── rasterrs.h
│ │ │ │ ├── rastpic.c
│ │ │ │ ├── rastpic.h
│ │ │ │ └── rules.mk
│ │ │ ├── sfnt/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── rules.mk
│ │ │ │ ├── sfdriver.c
│ │ │ │ ├── sfdriver.h
│ │ │ │ ├── sferrors.h
│ │ │ │ ├── sfnt.c
│ │ │ │ ├── sfntpic.c
│ │ │ │ ├── sfntpic.h
│ │ │ │ ├── sfobjs.c
│ │ │ │ ├── sfobjs.h
│ │ │ │ ├── ttbdf.c
│ │ │ │ ├── ttbdf.h
│ │ │ │ ├── ttcmap.c
│ │ │ │ ├── ttcmap.h
│ │ │ │ ├── ttcmapc.h
│ │ │ │ ├── ttkern.c
│ │ │ │ ├── ttkern.h
│ │ │ │ ├── ttload.c
│ │ │ │ ├── ttload.h
│ │ │ │ ├── ttmtx.c
│ │ │ │ ├── ttmtx.h
│ │ │ │ ├── ttpost.c
│ │ │ │ ├── ttpost.h
│ │ │ │ ├── ttsbit.c
│ │ │ │ ├── ttsbit.h
│ │ │ │ └── ttsbit0.c
│ │ │ ├── smooth/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── ftgrays.c
│ │ │ │ ├── ftgrays.h
│ │ │ │ ├── ftsmerrs.h
│ │ │ │ ├── ftsmooth.c
│ │ │ │ ├── ftsmooth.h
│ │ │ │ ├── ftspic.c
│ │ │ │ ├── ftspic.h
│ │ │ │ ├── module.mk
│ │ │ │ ├── rules.mk
│ │ │ │ └── smooth.c
│ │ │ ├── tools/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── apinames.c
│ │ │ │ ├── chktrcmp.py
│ │ │ │ ├── cordic.py
│ │ │ │ ├── docmaker/
│ │ │ │ │ ├── content.py
│ │ │ │ │ ├── docbeauty.py
│ │ │ │ │ ├── docmaker.py
│ │ │ │ │ ├── formatter.py
│ │ │ │ │ ├── sources.py
│ │ │ │ │ ├── tohtml.py
│ │ │ │ │ └── utils.py
│ │ │ │ ├── ftrandom/
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── README
│ │ │ │ │ └── ftrandom.c
│ │ │ │ ├── glnames.py
│ │ │ │ ├── test_afm.c
│ │ │ │ ├── test_bbox.c
│ │ │ │ └── test_trig.c
│ │ │ ├── truetype/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── rules.mk
│ │ │ │ ├── truetype.c
│ │ │ │ ├── ttdriver.c
│ │ │ │ ├── ttdriver.h
│ │ │ │ ├── tterrors.h
│ │ │ │ ├── ttgload.c
│ │ │ │ ├── ttgload.h
│ │ │ │ ├── ttgxvar.c
│ │ │ │ ├── ttgxvar.h
│ │ │ │ ├── ttinterp.c
│ │ │ │ ├── ttinterp.h
│ │ │ │ ├── ttobjs.c
│ │ │ │ ├── ttobjs.h
│ │ │ │ ├── ttpic.c
│ │ │ │ ├── ttpic.h
│ │ │ │ ├── ttpload.c
│ │ │ │ ├── ttpload.h
│ │ │ │ ├── ttsubpix.c
│ │ │ │ └── ttsubpix.h
│ │ │ ├── type1/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── rules.mk
│ │ │ │ ├── t1afm.c
│ │ │ │ ├── t1afm.h
│ │ │ │ ├── t1driver.c
│ │ │ │ ├── t1driver.h
│ │ │ │ ├── t1errors.h
│ │ │ │ ├── t1gload.c
│ │ │ │ ├── t1gload.h
│ │ │ │ ├── t1load.c
│ │ │ │ ├── t1load.h
│ │ │ │ ├── t1objs.c
│ │ │ │ ├── t1objs.h
│ │ │ │ ├── t1parse.c
│ │ │ │ ├── t1parse.h
│ │ │ │ ├── t1tokens.h
│ │ │ │ └── type1.c
│ │ │ ├── type42/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── rules.mk
│ │ │ │ ├── t42drivr.c
│ │ │ │ ├── t42drivr.h
│ │ │ │ ├── t42error.h
│ │ │ │ ├── t42objs.c
│ │ │ │ ├── t42objs.h
│ │ │ │ ├── t42parse.c
│ │ │ │ ├── t42parse.h
│ │ │ │ ├── t42types.h
│ │ │ │ └── type42.c
│ │ │ └── winfonts/
│ │ │ ├── Jamfile
│ │ │ ├── fnterrs.h
│ │ │ ├── module.mk
│ │ │ ├── rules.mk
│ │ │ ├── winfnt.c
│ │ │ └── winfnt.h
│ │ ├── libfreetype2/
│ │ │ ├── FTL.txt
│ │ │ ├── README.md
│ │ │ ├── include/
│ │ │ │ ├── freetype/
│ │ │ │ │ ├── config/
│ │ │ │ │ │ ├── ftconfig.h
│ │ │ │ │ │ ├── ftheader.h
│ │ │ │ │ │ ├── ftmodule.h
│ │ │ │ │ │ ├── ftoption.h
│ │ │ │ │ │ └── ftstdlib.h
│ │ │ │ │ ├── freetype.h
│ │ │ │ │ ├── ftadvanc.h
│ │ │ │ │ ├── ftbbox.h
│ │ │ │ │ ├── ftbdf.h
│ │ │ │ │ ├── ftbitmap.h
│ │ │ │ │ ├── ftcache.h
│ │ │ │ │ ├── ftchapters.h
│ │ │ │ │ ├── ftcid.h
│ │ │ │ │ ├── fterrdef.h
│ │ │ │ │ ├── fterrors.h
│ │ │ │ │ ├── ftgasp.h
│ │ │ │ │ ├── ftglyph.h
│ │ │ │ │ ├── ftgxval.h
│ │ │ │ │ ├── ftgzip.h
│ │ │ │ │ ├── ftimage.h
│ │ │ │ │ ├── ftincrem.h
│ │ │ │ │ ├── ftlcdfil.h
│ │ │ │ │ ├── ftlist.h
│ │ │ │ │ ├── ftlzw.h
│ │ │ │ │ ├── ftmac.h
│ │ │ │ │ ├── ftmm.h
│ │ │ │ │ ├── ftmodapi.h
│ │ │ │ │ ├── ftmoderr.h
│ │ │ │ │ ├── ftotval.h
│ │ │ │ │ ├── ftoutln.h
│ │ │ │ │ ├── ftpfr.h
│ │ │ │ │ ├── ftrender.h
│ │ │ │ │ ├── ftsizes.h
│ │ │ │ │ ├── ftsnames.h
│ │ │ │ │ ├── ftstroke.h
│ │ │ │ │ ├── ftsynth.h
│ │ │ │ │ ├── ftsystem.h
│ │ │ │ │ ├── fttrigon.h
│ │ │ │ │ ├── fttypes.h
│ │ │ │ │ ├── ftwinfnt.h
│ │ │ │ │ ├── ftxf86.h
│ │ │ │ │ ├── internal/
│ │ │ │ │ │ ├── autohint.h
│ │ │ │ │ │ ├── ftcalc.h
│ │ │ │ │ │ ├── ftdebug.h
│ │ │ │ │ │ ├── ftdriver.h
│ │ │ │ │ │ ├── ftgloadr.h
│ │ │ │ │ │ ├── ftmemory.h
│ │ │ │ │ │ ├── ftobjs.h
│ │ │ │ │ │ ├── ftpic.h
│ │ │ │ │ │ ├── ftrfork.h
│ │ │ │ │ │ ├── ftserv.h
│ │ │ │ │ │ ├── ftstream.h
│ │ │ │ │ │ ├── fttrace.h
│ │ │ │ │ │ ├── ftvalid.h
│ │ │ │ │ │ ├── internal.h
│ │ │ │ │ │ ├── pcftypes.h
│ │ │ │ │ │ ├── psaux.h
│ │ │ │ │ │ ├── pshints.h
│ │ │ │ │ │ ├── services/
│ │ │ │ │ │ │ ├── svbdf.h
│ │ │ │ │ │ │ ├── svcid.h
│ │ │ │ │ │ │ ├── svgldict.h
│ │ │ │ │ │ │ ├── svgxval.h
│ │ │ │ │ │ │ ├── svkern.h
│ │ │ │ │ │ │ ├── svmm.h
│ │ │ │ │ │ │ ├── svotval.h
│ │ │ │ │ │ │ ├── svpfr.h
│ │ │ │ │ │ │ ├── svpostnm.h
│ │ │ │ │ │ │ ├── svpscmap.h
│ │ │ │ │ │ │ ├── svpsinfo.h
│ │ │ │ │ │ │ ├── svsfnt.h
│ │ │ │ │ │ │ ├── svttcmap.h
│ │ │ │ │ │ │ ├── svtteng.h
│ │ │ │ │ │ │ ├── svttglyf.h
│ │ │ │ │ │ │ ├── svwinfnt.h
│ │ │ │ │ │ │ └── svxf86nm.h
│ │ │ │ │ │ ├── sfnt.h
│ │ │ │ │ │ ├── t1types.h
│ │ │ │ │ │ └── tttypes.h
│ │ │ │ │ ├── t1tables.h
│ │ │ │ │ ├── ttnameid.h
│ │ │ │ │ ├── tttables.h
│ │ │ │ │ ├── tttags.h
│ │ │ │ │ └── ttunpat.h
│ │ │ │ └── ft2build.h
│ │ │ └── jni/
│ │ │ ├── Android.mk
│ │ │ ├── Application.mk
│ │ │ ├── shared.mk
│ │ │ └── static.mk
│ │ ├── lua/
│ │ │ ├── lapi.c
│ │ │ ├── lapi.h
│ │ │ ├── lauxlib.c
│ │ │ ├── lauxlib.h
│ │ │ ├── lbaselib.c
│ │ │ ├── lbitlib.c
│ │ │ ├── lcode.c
│ │ │ ├── lcode.h
│ │ │ ├── lcorolib.c
│ │ │ ├── lctype.c
│ │ │ ├── lctype.h
│ │ │ ├── ldblib.c
│ │ │ ├── ldebug.c
│ │ │ ├── ldebug.h
│ │ │ ├── ldo.c
│ │ │ ├── ldo.h
│ │ │ ├── ldump.c
│ │ │ ├── lfunc.c
│ │ │ ├── lfunc.h
│ │ │ ├── lgc.c
│ │ │ ├── lgc.h
│ │ │ ├── linit.c
│ │ │ ├── liolib.c
│ │ │ ├── llex.c
│ │ │ ├── llex.h
│ │ │ ├── llimits.h
│ │ │ ├── lmathlib.c
│ │ │ ├── lmem.c
│ │ │ ├── lmem.h
│ │ │ ├── loadlib.c
│ │ │ ├── lobject.c
│ │ │ ├── lobject.h
│ │ │ ├── lopcodes.c
│ │ │ ├── lopcodes.h
│ │ │ ├── loslib.c
│ │ │ ├── lparser.c
│ │ │ ├── lparser.h
│ │ │ ├── lstate.c
│ │ │ ├── lstate.h
│ │ │ ├── lstring.c
│ │ │ ├── lstring.h
│ │ │ ├── lstrlib.c
│ │ │ ├── ltable.c
│ │ │ ├── ltable.h
│ │ │ ├── ltablib.c
│ │ │ ├── ltm.c
│ │ │ ├── ltm.h
│ │ │ ├── lua.h
│ │ │ ├── lua.hpp
│ │ │ ├── luaconf.h
│ │ │ ├── lualib.h
│ │ │ ├── lundump.c
│ │ │ ├── lundump.h
│ │ │ ├── lvm.c
│ │ │ ├── lvm.h
│ │ │ ├── lzio.c
│ │ │ └── lzio.h
│ │ ├── minizip/
│ │ │ ├── crypt.h
│ │ │ ├── ioapi.c
│ │ │ ├── ioapi.h
│ │ │ ├── mztools.c
│ │ │ ├── mztools.h
│ │ │ ├── unzip.c
│ │ │ └── unzip.h
│ │ ├── mono/
│ │ │ ├── cil/
│ │ │ │ └── opcode.def
│ │ │ ├── jit/
│ │ │ │ └── jit.h
│ │ │ ├── metadata/
│ │ │ │ ├── appdomain.h
│ │ │ │ ├── assembly.h
│ │ │ │ ├── attrdefs.h
│ │ │ │ ├── blob.h
│ │ │ │ ├── class.h
│ │ │ │ ├── debug-helpers.h
│ │ │ │ ├── debug-mono-symfile.h
│ │ │ │ ├── environment.h
│ │ │ │ ├── exception.h
│ │ │ │ ├── image.h
│ │ │ │ ├── loader.h
│ │ │ │ ├── metadata.h
│ │ │ │ ├── mono-config.h
│ │ │ │ ├── mono-debug.h
│ │ │ │ ├── mono-gc.h
│ │ │ │ ├── object.h
│ │ │ │ ├── opcodes.h
│ │ │ │ ├── profiler.h
│ │ │ │ ├── reflection.h
│ │ │ │ ├── row-indexes.h
│ │ │ │ ├── sgen-bridge.h
│ │ │ │ ├── threads.h
│ │ │ │ ├── tokentype.h
│ │ │ │ └── verify.h
│ │ │ └── utils/
│ │ │ ├── mono-dl-fallback.h
│ │ │ ├── mono-error.h
│ │ │ ├── mono-logger.h
│ │ │ └── mono-publib.h
│ │ ├── sha1/
│ │ │ ├── hash_sha1.c
│ │ │ └── hash_sha1.h
│ │ └── utf8_converter/
│ │ ├── utf8.c
│ │ └── utf8.h
│ ├── porting/
│ │ ├── Android/
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── GameEngine-android/
│ │ │ │ ├── .classpath
│ │ │ │ ├── .cproject
│ │ │ │ ├── .gitattributes
│ │ │ │ ├── .project
│ │ │ │ ├── .settings/
│ │ │ │ │ ├── org.eclipse.cdt.core.prefs
│ │ │ │ │ ├── org.eclipse.core.resources.prefs
│ │ │ │ │ └── org.eclipse.jdt.core.prefs
│ │ │ │ ├── AndroidManifest.xml
│ │ │ │ ├── build.gradle
│ │ │ │ ├── build.py
│ │ │ │ ├── gradle/
│ │ │ │ │ └── wrapper/
│ │ │ │ │ ├── gradle-wrapper.jar
│ │ │ │ │ └── gradle-wrapper.properties
│ │ │ │ ├── gradle.properties.forReleaseSigning
│ │ │ │ ├── gradlew
│ │ │ │ ├── gradlew.bat
│ │ │ │ ├── lint.xml
│ │ │ │ ├── proguard.cfg
│ │ │ │ ├── project.properties
│ │ │ │ └── res/
│ │ │ │ ├── layout/
│ │ │ │ │ ├── indicator.xml
│ │ │ │ │ ├── install.xml
│ │ │ │ │ └── main.xml
│ │ │ │ └── values/
│ │ │ │ └── strings.xml
│ │ │ ├── jni/
│ │ │ │ ├── Android/
│ │ │ │ │ ├── AndroidFileLocation.h
│ │ │ │ │ ├── CAndroidFont.cpp
│ │ │ │ │ ├── CAndroidFont.h
│ │ │ │ │ ├── CAndroidPathConv.cpp
│ │ │ │ │ ├── CAndroidPathConv.h
│ │ │ │ │ ├── CAndroidReadFileStream.cpp
│ │ │ │ │ ├── CAndroidReadFileStream.h
│ │ │ │ │ ├── CAndroidRequest.cpp
│ │ │ │ │ ├── CAndroidRequest.h
│ │ │ │ │ ├── CAndroidTmpFile.cpp
│ │ │ │ │ ├── CAndroidTmpFile.h
│ │ │ │ │ ├── CAndroidWidget.cpp
│ │ │ │ │ ├── CAndroidWidget.h
│ │ │ │ │ ├── CAndroidWriteFileStream.cpp
│ │ │ │ │ ├── CAndroidWriteFileStream.h
│ │ │ │ │ ├── CJNI.cpp
│ │ │ │ │ ├── CJNI.h
│ │ │ │ │ ├── CMediaPlayer.cpp
│ │ │ │ │ ├── CMediaPlayer.h
│ │ │ │ │ ├── CSockReadStream.cpp
│ │ │ │ │ ├── CSockReadStream.h
│ │ │ │ │ ├── CSockWriteStream.cpp
│ │ │ │ │ ├── CSockWriteStream.h
│ │ │ │ │ ├── GLcommon.h
│ │ │ │ │ ├── KLBOpenSLAudioPlayer.h
│ │ │ │ │ ├── KLBOpenSLEngine.cpp
│ │ │ │ │ ├── KLBOpenSLSoundAsset.cpp
│ │ │ │ │ ├── KLBOpenSLSoundAssetLoader.cpp
│ │ │ │ │ ├── KLBOpenSLSoundHandle.cpp
│ │ │ │ │ ├── KLBPlatformMetrics.cpp
│ │ │ │ │ ├── KLBPlatformMetrics.h
│ │ │ │ │ ├── PackageDefine.h
│ │ │ │ │ └── assert.cpp
│ │ │ │ ├── Android.mk
│ │ │ │ ├── Application.mk
│ │ │ │ ├── curl-7.29.0/
│ │ │ │ │ ├── armeabi/
│ │ │ │ │ │ └── libcurl.a
│ │ │ │ │ ├── include/
│ │ │ │ │ │ └── curl/
│ │ │ │ │ │ ├── curl.h
│ │ │ │ │ │ ├── curlbuild.h
│ │ │ │ │ │ ├── curlrules.h
│ │ │ │ │ │ ├── curlver.h
│ │ │ │ │ │ ├── easy.h
│ │ │ │ │ │ ├── mprintf.h
│ │ │ │ │ │ ├── multi.h
│ │ │ │ │ │ ├── stdcheaders.h
│ │ │ │ │ │ └── typecheck-gcc.h
│ │ │ │ │ └── x86/
│ │ │ │ │ └── libcurl.a
│ │ │ │ ├── luajit-2.0.1/
│ │ │ │ │ └── include/
│ │ │ │ │ ├── lauxlib.h
│ │ │ │ │ ├── lua.h
│ │ │ │ │ ├── lua.hpp
│ │ │ │ │ ├── luaconf.h
│ │ │ │ │ ├── luajit.h
│ │ │ │ │ └── lualib.h
│ │ │ │ └── proxy/
│ │ │ │ ├── jniproxy.cpp
│ │ │ │ └── klb_android_GameEngine_PFInterface.h
│ │ │ ├── lint.xml
│ │ │ ├── project.properties
│ │ │ ├── res/
│ │ │ │ ├── layout/
│ │ │ │ │ ├── indicator.xml
│ │ │ │ │ ├── install.xml
│ │ │ │ │ └── main.xml
│ │ │ │ └── values/
│ │ │ │ └── strings.xml
│ │ │ └── src/
│ │ │ ├── com/
│ │ │ │ └── android/
│ │ │ │ └── vending/
│ │ │ │ └── billing/
│ │ │ │ └── IInAppBillingService.aidl
│ │ │ └── klb/
│ │ │ └── android/
│ │ │ └── GameEngine/
│ │ │ ├── EditBoxItem.java
│ │ │ ├── FontManager.java
│ │ │ ├── GCMIntentService.java
│ │ │ ├── GLES20GameRenderer.java
│ │ │ ├── GameEngineActivity.java
│ │ │ ├── GameEngineApplication.java
│ │ │ ├── GameGLSurfaceView.java
│ │ │ ├── IndicaterItem.java
│ │ │ ├── MovieView.java
│ │ │ ├── MovieViewItem.java
│ │ │ ├── PFInterface.java
│ │ │ ├── RClassReference.java
│ │ │ ├── Typefaces.java
│ │ │ ├── WebViewItem.java
│ │ │ ├── billing/
│ │ │ │ ├── listener/
│ │ │ │ │ ├── IOnConsumeFinishedListener.java
│ │ │ │ │ ├── IOnIabPurchaseFinishedListener.java
│ │ │ │ │ ├── IOnIabSetupFinishedListener.java
│ │ │ │ │ └── IQueryInventoryFinishedListener.java
│ │ │ │ ├── manager/
│ │ │ │ │ └── BillingManager.java
│ │ │ │ └── util/
│ │ │ │ ├── Base64.java
│ │ │ │ ├── Base64DecoderException.java
│ │ │ │ ├── IabException.java
│ │ │ │ ├── IabHelper.java
│ │ │ │ ├── IabResult.java
│ │ │ │ ├── Inventory.java
│ │ │ │ ├── Purchase.java
│ │ │ │ └── SkuDetails.java
│ │ │ └── prngfix/
│ │ │ └── PRNGFixes.java
│ │ ├── FileDelete.cpp
│ │ ├── FileDelete.h
│ │ ├── FontRendering.cpp
│ │ ├── FontRendering.h
│ │ ├── OSX/
│ │ │ ├── Playground/
│ │ │ │ ├── AppDelegate.mm
│ │ │ │ ├── CSockReadStream.cpp
│ │ │ │ ├── CSockWriteStream.cpp
│ │ │ │ ├── CiOSAudio.mm
│ │ │ │ ├── CiOSAudioManager.mm
│ │ │ │ ├── CiOSMovieView.mm
│ │ │ │ ├── CiOSPathConv.mm
│ │ │ │ ├── CiOSPlatform.mm
│ │ │ │ ├── CiOSReadFileStream.cpp
│ │ │ │ ├── CiOSSysResource.mm
│ │ │ │ ├── CiOSTmpFile.cpp
│ │ │ │ ├── CiOSWebView.mm
│ │ │ │ ├── CiOSWidget.mm
│ │ │ │ ├── CiOSWriteFileStream.cpp
│ │ │ │ ├── EAGLView.mm
│ │ │ │ ├── NSData+Base64.m
│ │ │ │ ├── NSGLView.h
│ │ │ │ ├── NSGLView.mm
│ │ │ │ ├── OpenGLRenderer.h
│ │ │ │ ├── OpenGLRenderer.mm
│ │ │ │ ├── Playground-Info.plist
│ │ │ │ ├── Playground-Prefix.pch
│ │ │ │ ├── PlaygroundAppDelegate.h
│ │ │ │ ├── PlaygroundAppDelegate.mm
│ │ │ │ ├── ViewController.mm
│ │ │ │ ├── assert.mm
│ │ │ │ ├── en.lproj/
│ │ │ │ │ ├── Credits.rtf
│ │ │ │ │ ├── InfoPlist.strings
│ │ │ │ │ └── MainMenu.xib
│ │ │ │ ├── glUtil.h
│ │ │ │ ├── imageUtil.h
│ │ │ │ ├── imageUtil.m
│ │ │ │ ├── include/
│ │ │ │ │ ├── AppDelegate.h
│ │ │ │ │ ├── CSockReadStream.h
│ │ │ │ │ ├── CSockWriteStream.h
│ │ │ │ │ ├── CiOSAudio.h
│ │ │ │ │ ├── CiOSAudioManager.h
│ │ │ │ │ ├── CiOSMovieView.h
│ │ │ │ │ ├── CiOSPathConv.h
│ │ │ │ │ ├── CiOSPlatform.h
│ │ │ │ │ ├── CiOSReadFileStream.h
│ │ │ │ │ ├── CiOSSysResource.h
│ │ │ │ │ ├── CiOSTextView.h
│ │ │ │ │ ├── CiOSTmpFile.h
│ │ │ │ │ ├── CiOSWebView.h
│ │ │ │ │ ├── CiOSWidget.h
│ │ │ │ │ ├── CiOSWriteFileStream.h
│ │ │ │ │ ├── EAGLView.h
│ │ │ │ │ ├── GLcommon.h
│ │ │ │ │ ├── KLBPlatformMetrics.h
│ │ │ │ │ ├── NSData+Base64.h
│ │ │ │ │ ├── ViewController.h
│ │ │ │ │ └── iOSFileLocation.h
│ │ │ │ ├── main.m
│ │ │ │ ├── matrixUtil.c
│ │ │ │ ├── matrixUtil.h
│ │ │ │ ├── modelUtil.c
│ │ │ │ ├── modelUtil.h
│ │ │ │ ├── porting/
│ │ │ │ │ └── include/
│ │ │ │ │ └── KLBPlatformMetrics.h
│ │ │ │ ├── sourceUtil.c
│ │ │ │ ├── sourceUtil.h
│ │ │ │ ├── vectorUtil.c
│ │ │ │ └── vectorUtil.h
│ │ │ ├── Playground.xcodeproj/
│ │ │ │ └── project.pbxproj
│ │ │ ├── PlaygroundOSS/
│ │ │ │ ├── PlaygroundOSS-Info.plist
│ │ │ │ ├── PlaygroundOSS-Prefix.pch
│ │ │ │ └── en.lproj/
│ │ │ │ └── InfoPlist.strings
│ │ │ ├── PlaygroundOSSTests/
│ │ │ │ ├── PlaygroundOSSTests-Info.plist
│ │ │ │ ├── PlaygroundOSSTests.m
│ │ │ │ └── en.lproj/
│ │ │ │ └── InfoPlist.strings
│ │ │ ├── Shaders/
│ │ │ │ ├── character.fsh
│ │ │ │ ├── character.vsh
│ │ │ │ ├── reflect.fsh
│ │ │ │ └── reflect.vsh
│ │ │ ├── curl/
│ │ │ │ ├── include/
│ │ │ │ │ └── curl/
│ │ │ │ │ ├── curl.h
│ │ │ │ │ ├── curlbuild.h
│ │ │ │ │ ├── curlrules.h
│ │ │ │ │ ├── curlver.h
│ │ │ │ │ ├── easy.h
│ │ │ │ │ ├── mprintf.h
│ │ │ │ │ ├── multi.h
│ │ │ │ │ ├── stdcheaders.h
│ │ │ │ │ └── typecheck-gcc.h
│ │ │ │ └── lib/
│ │ │ │ ├── libcurl.a
│ │ │ │ ├── libcurl.la
│ │ │ │ └── pkgconfig/
│ │ │ │ └── libcurl.pc
│ │ │ ├── demon.model
│ │ │ └── glew/
│ │ │ └── include/
│ │ │ └── GL/
│ │ │ ├── glew.h
│ │ │ ├── glxew.h
│ │ │ └── wglew.h
│ │ ├── Win32/
│ │ │ ├── EngineStdReference.h
│ │ │ ├── EngineStdReferenceOSS.cpp
│ │ │ ├── GameEngine.h
│ │ │ ├── GameLibraryWin32.cpp
│ │ │ ├── KHR/
│ │ │ │ └── khrplatform.h
│ │ │ ├── Lame/
│ │ │ │ ├── BladeMP3EncDLL.h
│ │ │ │ ├── lame.h
│ │ │ │ ├── libmp3lame.exp
│ │ │ │ └── libmp3lame.lib
│ │ │ ├── OSSGameLibraryWin32.sln
│ │ │ ├── OSSGameLibraryWin32.vcxproj
│ │ │ ├── OSSGameLibraryWin32.vcxproj.filters
│ │ │ ├── Output/
│ │ │ │ └── Debug_CSharp/
│ │ │ │ ├── libs/
│ │ │ │ │ └── lib/
│ │ │ │ │ └── README.txt
│ │ │ │ ├── mono.def
│ │ │ │ ├── mono.exp
│ │ │ │ └── mono.lib
│ │ │ ├── Platform/
│ │ │ │ ├── CSockReadStream.cpp
│ │ │ │ ├── CSockReadStream.h
│ │ │ │ ├── CSockWriteStream.cpp
│ │ │ │ ├── CSockWriteStream.h
│ │ │ │ ├── CWin32Audio.cpp
│ │ │ │ ├── CWin32Audio.h
│ │ │ │ ├── CWin32HttpStream.cpp
│ │ │ │ ├── CWin32HttpStream.h
│ │ │ │ ├── CWin32KeyChain.cpp
│ │ │ │ ├── CWin32KeyChain.h
│ │ │ │ ├── CWin32MP3.cpp
│ │ │ │ ├── CWin32MP3.h
│ │ │ │ ├── CWin32PathConv.cpp
│ │ │ │ ├── CWin32PathConv.h
│ │ │ │ ├── CWin32Platform.cpp
│ │ │ │ ├── CWin32Platform.h
│ │ │ │ ├── CWin32ReadFileStream.cpp
│ │ │ │ ├── CWin32ReadFileStream.h
│ │ │ │ ├── CWin32TmpFile.cpp
│ │ │ │ ├── CWin32TmpFile.h
│ │ │ │ ├── CWin32Widget.cpp
│ │ │ │ ├── CWin32Widget.h
│ │ │ │ ├── CWin32WriteFileStream.cpp
│ │ │ │ ├── CWin32WriteFileStream.h
│ │ │ │ ├── KLBPlatformMetrics.h
│ │ │ │ ├── Win32FileLocation.h
│ │ │ │ ├── glew.h
│ │ │ │ ├── glext.h
│ │ │ │ ├── glut.h
│ │ │ │ ├── glxew.h
│ │ │ │ ├── libs/
│ │ │ │ │ ├── glew32.lib
│ │ │ │ │ ├── glew32mx.lib
│ │ │ │ │ ├── glew32mxs.lib
│ │ │ │ │ ├── glew32s.lib
│ │ │ │ │ ├── glut.lib
│ │ │ │ │ └── glut32.lib
│ │ │ │ └── wglew.h
│ │ │ ├── SampleProject/
│ │ │ │ ├── SampleProject.cpp
│ │ │ │ ├── SampleProject.vcxproj
│ │ │ │ └── SampleProject.vcxproj.filters
│ │ │ ├── assert.c
│ │ │ ├── directx/
│ │ │ │ └── dxguid.lib
│ │ │ ├── openssl/
│ │ │ │ ├── include/
│ │ │ │ │ └── openssl/
│ │ │ │ │ ├── aes.h
│ │ │ │ │ ├── applink.c
│ │ │ │ │ ├── asn1.h
│ │ │ │ │ ├── asn1_mac.h
│ │ │ │ │ ├── asn1t.h
│ │ │ │ │ ├── bio.h
│ │ │ │ │ ├── blowfish.h
│ │ │ │ │ ├── bn.h
│ │ │ │ │ ├── buffer.h
│ │ │ │ │ ├── camellia.h
│ │ │ │ │ ├── cast.h
│ │ │ │ │ ├── cmac.h
│ │ │ │ │ ├── cms.h
│ │ │ │ │ ├── comp.h
│ │ │ │ │ ├── conf.h
│ │ │ │ │ ├── conf_api.h
│ │ │ │ │ ├── crypto.h
│ │ │ │ │ ├── des.h
│ │ │ │ │ ├── des_old.h
│ │ │ │ │ ├── dh.h
│ │ │ │ │ ├── dsa.h
│ │ │ │ │ ├── dso.h
│ │ │ │ │ ├── dtls1.h
│ │ │ │ │ ├── e_os2.h
│ │ │ │ │ ├── ebcdic.h
│ │ │ │ │ ├── ec.h
│ │ │ │ │ ├── ecdh.h
│ │ │ │ │ ├── ecdsa.h
│ │ │ │ │ ├── engine.h
│ │ │ │ │ ├── err.h
│ │ │ │ │ ├── evp.h
│ │ │ │ │ ├── hmac.h
│ │ │ │ │ ├── idea.h
│ │ │ │ │ ├── krb5_asn.h
│ │ │ │ │ ├── kssl.h
│ │ │ │ │ ├── lhash.h
│ │ │ │ │ ├── md4.h
│ │ │ │ │ ├── md5.h
│ │ │ │ │ ├── mdc2.h
│ │ │ │ │ ├── modes.h
│ │ │ │ │ ├── obj_mac.h
│ │ │ │ │ ├── objects.h
│ │ │ │ │ ├── ocsp.h
│ │ │ │ │ ├── opensslconf.h
│ │ │ │ │ ├── opensslv.h
│ │ │ │ │ ├── ossl_typ.h
│ │ │ │ │ ├── pem.h
│ │ │ │ │ ├── pem2.h
│ │ │ │ │ ├── pkcs12.h
│ │ │ │ │ ├── pkcs7.h
│ │ │ │ │ ├── pqueue.h
│ │ │ │ │ ├── rand.h
│ │ │ │ │ ├── rc2.h
│ │ │ │ │ ├── rc4.h
│ │ │ │ │ ├── ripemd.h
│ │ │ │ │ ├── rsa.h
│ │ │ │ │ ├── safestack.h
│ │ │ │ │ ├── seed.h
│ │ │ │ │ ├── sha.h
│ │ │ │ │ ├── srp.h
│ │ │ │ │ ├── srtp.h
│ │ │ │ │ ├── ssl.h
│ │ │ │ │ ├── ssl2.h
│ │ │ │ │ ├── ssl23.h
│ │ │ │ │ ├── ssl3.h
│ │ │ │ │ ├── stack.h
│ │ │ │ │ ├── symhacks.h
│ │ │ │ │ ├── tls1.h
│ │ │ │ │ ├── ts.h
│ │ │ │ │ ├── txt_db.h
│ │ │ │ │ ├── ui.h
│ │ │ │ │ ├── ui_compat.h
│ │ │ │ │ ├── whrlpool.h
│ │ │ │ │ ├── x509.h
│ │ │ │ │ ├── x509_vfy.h
│ │ │ │ │ └── x509v3.h
│ │ │ │ ├── lib/
│ │ │ │ │ ├── libeay32.lib
│ │ │ │ │ └── ssleay32.lib
│ │ │ │ └── ssl/
│ │ │ │ └── openssl.cnf
│ │ │ ├── pure-Lua/
│ │ │ │ ├── lua52.exp
│ │ │ │ └── lua52.lib
│ │ │ ├── res.rc
│ │ │ ├── stdafx.cpp
│ │ │ ├── stdafx.h
│ │ │ ├── targetver.h
│ │ │ └── zlib/
│ │ │ ├── include/
│ │ │ │ ├── zconf.h
│ │ │ │ └── zlib.h
│ │ │ ├── zdll.lib
│ │ │ └── zlib.lib
│ │ ├── dirent.c
│ │ ├── dirent.h
│ │ └── iOS/
│ │ ├── AppDelegate.mm
│ │ ├── CSockReadStream.cpp
│ │ ├── CSockWriteStream.cpp
│ │ ├── CiOSAudio.mm
│ │ ├── CiOSAudioManager.mm
│ │ ├── CiOSHttpStream.h
│ │ ├── CiOSHttpStream.mm
│ │ ├── CiOSMovieView.mm
│ │ ├── CiOSPathConv.mm
│ │ ├── CiOSPlatform.mm
│ │ ├── CiOSReadFileStream.cpp
│ │ ├── CiOSSysResource.mm
│ │ ├── CiOSTextView.mm
│ │ ├── CiOSTmpFile.cpp
│ │ ├── CiOSWidget.mm
│ │ ├── CiOSWriteFileStream.cpp
│ │ ├── EAGLView.mm
│ │ ├── NSData+Base64.m
│ │ ├── ViewController.mm
│ │ ├── assert.mm
│ │ ├── curl/
│ │ │ ├── ios-appstore/
│ │ │ │ ├── include/
│ │ │ │ │ ├── curl.h
│ │ │ │ │ ├── curlbuild.h
│ │ │ │ │ ├── curlrules.h
│ │ │ │ │ ├── curlver.h
│ │ │ │ │ ├── easy.h
│ │ │ │ │ ├── mprintf.h
│ │ │ │ │ ├── multi.h
│ │ │ │ │ ├── stdcheaders.h
│ │ │ │ │ └── typecheck-gcc.h
│ │ │ │ └── lib/
│ │ │ │ └── libcurl.a
│ │ │ └── ios-dev/
│ │ │ ├── include/
│ │ │ │ ├── curl.h
│ │ │ │ ├── curlbuild.h
│ │ │ │ ├── curlrules.h
│ │ │ │ ├── curlver.h
│ │ │ │ ├── easy.h
│ │ │ │ ├── mprintf.h
│ │ │ │ ├── multi.h
│ │ │ │ ├── stdcheaders.h
│ │ │ │ └── typecheck-gcc.h
│ │ │ └── lib/
│ │ │ └── libcurl.a
│ │ └── include/
│ │ ├── AppDelegate.h
│ │ ├── CSockReadStream.h
│ │ ├── CSockWriteStream.h
│ │ ├── CiOSAudio.h
│ │ ├── CiOSAudioManager.h
│ │ ├── CiOSMovieView.h
│ │ ├── CiOSPathConv.h
│ │ ├── CiOSPlatform.h
│ │ ├── CiOSReadFileStream.h
│ │ ├── CiOSSysResource.h
│ │ ├── CiOSTextView.h
│ │ ├── CiOSTmpFile.h
│ │ ├── CiOSWebView.h
│ │ ├── CiOSWebView.mm
│ │ ├── CiOSWidget.h
│ │ ├── CiOSWriteFileStream.h
│ │ ├── EAGLView.h
│ │ ├── GLcommon.h
│ │ ├── KLBPlatformMetrics.h
│ │ ├── NSData+Base64.h
│ │ ├── ViewController.h
│ │ └── iOSFileLocation.h
│ ├── prebuilt/
│ │ └── OSX/
│ │ └── PlaygroundOSS.framework/
│ │ ├── Headers/
│ │ │ ├── AppDelegate.h
│ │ │ ├── ArrayAllocator.h
│ │ │ ├── AudioAsset.h
│ │ │ ├── BaseType.h
│ │ │ ├── CKLBAction.h
│ │ │ ├── CKLBActivityIndicatorNode.h
│ │ │ ├── CKLBAppProperty.h
│ │ │ ├── CKLBAsset.h
│ │ │ ├── CKLBAsyncFilecopy.h
│ │ │ ├── CKLBAsyncLoader.h
│ │ │ ├── CKLBBinArray.h
│ │ │ ├── CKLBCanvasSprite.h
│ │ │ ├── CKLBDataHandler.h
│ │ │ ├── CKLBDatabase.h
│ │ │ ├── CKLBDebugMenu.h
│ │ │ ├── CKLBDebugger.h
│ │ │ ├── CKLBDeviceKeyEvent.h
│ │ │ ├── CKLBDragCallbackIF.h
│ │ │ ├── CKLBDrawTask.h
│ │ │ ├── CKLBFormGroup.h
│ │ │ ├── CKLBFormIF.h
│ │ │ ├── CKLBGameApplication.h
│ │ │ ├── CKLBGenericTask.h
│ │ │ ├── CKLBHTTPInterface.h
│ │ │ ├── CKLBIntervalTimer.h
│ │ │ ├── CKLBJsonItem.h
│ │ │ ├── CKLBLabelNode.h
│ │ │ ├── CKLBLanguageDatabase.h
│ │ │ ├── CKLBLibRegistrator.h
│ │ │ ├── CKLBLifeCtrlTask.h
│ │ │ ├── CKLBLuaConst.h
│ │ │ ├── CKLBLuaDB.h
│ │ │ ├── CKLBLuaEnv.h
│ │ │ ├── CKLBLuaLibAPP.h
│ │ │ ├── CKLBLuaLibASSET.h
│ │ │ ├── CKLBLuaLibBIN.h
│ │ │ ├── CKLBLuaLibCONV.h
│ │ │ ├── CKLBLuaLibDATA.h
│ │ │ ├── CKLBLuaLibDB.h
│ │ │ ├── CKLBLuaLibDEBUG.h
│ │ │ ├── CKLBLuaLibENG.h
│ │ │ ├── CKLBLuaLibFONT.h
│ │ │ ├── CKLBLuaLibGL.h
│ │ │ ├── CKLBLuaLibHASH.h
│ │ │ ├── CKLBLuaLibKEY.h
│ │ │ ├── CKLBLuaLibLANG.h
│ │ │ ├── CKLBLuaLibMatrix.h
│ │ │ ├── CKLBLuaLibRES.h
│ │ │ ├── CKLBLuaLibSOUND.h
│ │ │ ├── CKLBLuaLibTASK.h
│ │ │ ├── CKLBLuaLibUI.h
│ │ │ ├── CKLBLuaPropTask.h
│ │ │ ├── CKLBLuaScript.h
│ │ │ ├── CKLBLuaTask.h
│ │ │ ├── CKLBModalStack.h
│ │ │ ├── CKLBMovieNode.h
│ │ │ ├── CKLBNetAPI.h
│ │ │ ├── CKLBNetAPIKeyChain.h
│ │ │ ├── CKLBNode.h
│ │ │ ├── CKLBNodeAnimPack.h
│ │ │ ├── CKLBNodeVirtualDocument.h
│ │ │ ├── CKLBOSCtrlEvent.h
│ │ │ ├── CKLBObject.h
│ │ │ ├── CKLBPauseCtrl.h
│ │ │ ├── CKLBPropertyBag.h
│ │ │ ├── CKLBRendering.h
│ │ │ ├── CKLBSWFPlayer.h
│ │ │ ├── CKLBScoreNode.h
│ │ │ ├── CKLBScrMgrDefault.h
│ │ │ ├── CKLBScrMgrPage.h
│ │ │ ├── CKLBScrMgrSolid.h
│ │ │ ├── CKLBScriptEnv.h
│ │ │ ├── CKLBScrollBarIF.h
│ │ │ ├── CKLBSplineNode.h
│ │ │ ├── CKLBSprite3D.h
│ │ │ ├── CKLBStoreService.h
│ │ │ ├── CKLBTask.h
│ │ │ ├── CKLBTextInputNode.h
│ │ │ ├── CKLBTextTempBuffer.h
│ │ │ ├── CKLBTexturePacker.h
│ │ │ ├── CKLBTouchEventUI.h
│ │ │ ├── CKLBTouchPad.h
│ │ │ ├── CKLBUIActivityIndicator.h
│ │ │ ├── CKLBUICanvas.h
│ │ │ ├── CKLBUIClip.h
│ │ │ ├── CKLBUIControl.h
│ │ │ ├── CKLBUIDebugItem.h
│ │ │ ├── CKLBUIDragIcon.h
│ │ │ ├── CKLBUIForm.h
│ │ │ ├── CKLBUIFreeVertItem.h
│ │ │ ├── CKLBUIGroup.h
│ │ │ ├── CKLBUILabel.h
│ │ │ ├── CKLBUIList.h
│ │ │ ├── CKLBUIMoviePlayer.h
│ │ │ ├── CKLBUIMultiImgItem.h
│ │ │ ├── CKLBUIPieChart.h
│ │ │ ├── CKLBUIPolyline.h
│ │ │ ├── CKLBUIProgressBar.h
│ │ │ ├── CKLBUIRubberBand.h
│ │ │ ├── CKLBUISWFPlayer.h
│ │ │ ├── CKLBUIScale9.h
│ │ │ ├── CKLBUIScore.h
│ │ │ ├── CKLBUIScrollBar.h
│ │ │ ├── CKLBUISimpleItem.h
│ │ │ ├── CKLBUISystem.h
│ │ │ ├── CKLBUITask.h
│ │ │ ├── CKLBUITextInput.h
│ │ │ ├── CKLBUITouchPad.h
│ │ │ ├── CKLBUIVariableItem.h
│ │ │ ├── CKLBUIVirtualDoc.h
│ │ │ ├── CKLBUIWebArea.h
│ │ │ ├── CKLBUpdate.h
│ │ │ ├── CKLBUtility.h
│ │ │ ├── CKLBWebViewNode.h
│ │ │ ├── CLuaState.h
│ │ │ ├── CPFInterface.h
│ │ │ ├── CSampleProjectEntrance.h
│ │ │ ├── CSockReadStream.h
│ │ │ ├── CSockWriteStream.h
│ │ │ ├── CSoundAnalysis.h
│ │ │ ├── CSoundAnalysisMP3.h
│ │ │ ├── CUnZip.h
│ │ │ ├── CiOSAudio.h
│ │ │ ├── CiOSAudioManager.h
│ │ │ ├── CiOSMovieView.h
│ │ │ ├── CiOSPathConv.h
│ │ │ ├── CiOSPlatform.h
│ │ │ ├── CiOSReadFileStream.h
│ │ │ ├── CiOSSysResource.h
│ │ │ ├── CiOSTextView.h
│ │ │ ├── CiOSTmpFile.h
│ │ │ ├── CiOSWebView.h
│ │ │ ├── CiOSWidget.h
│ │ │ ├── CiOSWriteFileStream.h
│ │ │ ├── CompositeManagement.h
│ │ │ ├── DataSet.h
│ │ │ ├── DataSet_JSonDB.h
│ │ │ ├── DebugAlloc.h
│ │ │ ├── DebugTracker.h
│ │ │ ├── Dictionnary.h
│ │ │ ├── EAGLView.h
│ │ │ ├── FileDelete.h
│ │ │ ├── FileSystem.h
│ │ │ ├── FontRendering.h
│ │ │ ├── GLcommon.h
│ │ │ ├── ILuaFuncLib.h
│ │ │ ├── IMgrEntry.h
│ │ │ ├── ITmpFile.h
│ │ │ ├── KLBPlatformMetrics.h
│ │ │ ├── KLBPlatformMetricsCommon.h
│ │ │ ├── Message.h
│ │ │ ├── MultithreadedNetwork.h
│ │ │ ├── NSData+Base64.h
│ │ │ ├── NSGLView.h
│ │ │ ├── NodeAnimationAsset.h
│ │ │ ├── OSWidget.h
│ │ │ ├── OpenGLRenderer.h
│ │ │ ├── RenderingFramework.h
│ │ │ ├── TextureManagement.h
│ │ │ ├── ViewController.h
│ │ │ ├── assert_klb.h
│ │ │ ├── encryptFile.h
│ │ │ ├── glUtil.h
│ │ │ ├── glWrapper.h
│ │ │ ├── iOSFileLocation.h
│ │ │ ├── imageUtil.h
│ │ │ ├── klb_vararg.h
│ │ │ ├── matrixUtil.h
│ │ │ ├── mem.h
│ │ │ ├── modelUtil.h
│ │ │ ├── sourceUtil.h
│ │ │ └── vectorUtil.h
│ │ ├── PlaygroundOSS
│ │ └── Resources/
│ │ ├── Info.plist
│ │ ├── Playground-Info.plist
│ │ └── en.lproj/
│ │ └── MainMenu.nib
│ └── source/
│ ├── Animation/
│ │ ├── CKLBNodeVirtualDocument.cpp
│ │ ├── CKLBNodeVirtualDocument.h
│ │ ├── CKLBSWFPlayer.cpp
│ │ ├── CKLBSWFPlayer.h
│ │ ├── CKLBScoreNode.cpp
│ │ ├── CKLBScoreNode.h
│ │ ├── CKLBSplineNode.cpp
│ │ ├── CKLBSplineNode.h
│ │ └── CKLBSystem.cpp
│ ├── Assets/
│ │ ├── AudioAsset.cpp
│ │ ├── AudioAsset.h
│ │ ├── CKLBAsset.h
│ │ ├── CKLBAssetManager.cpp
│ │ ├── CKLBPropertyBag.cpp
│ │ ├── CKLBPropertyBag.h
│ │ ├── CKLBTexturePacker.cpp
│ │ ├── CKLBTexturePacker.h
│ │ ├── CompositeManagement.cpp
│ │ ├── CompositeManagement.h
│ │ ├── NodeAnimationAsset.cpp
│ │ ├── NodeAnimationAsset.h
│ │ ├── TextureManagement.cpp
│ │ └── TextureManagement.h
│ ├── Core/
│ │ ├── ArrayAllocator.h
│ │ ├── CKLBAction.h
│ │ ├── CKLBAppProperty.cpp
│ │ ├── CKLBAppProperty.h
│ │ ├── CKLBAsyncFilecopy.cpp
│ │ ├── CKLBAsyncFilecopy.h
│ │ ├── CKLBAsyncLoader.cpp
│ │ ├── CKLBAsyncLoader.h
│ │ ├── CKLBBinArray.cpp
│ │ ├── CKLBBinArray.h
│ │ ├── CKLBContext.cpp
│ │ ├── CKLBDataHandler.cpp
│ │ ├── CKLBDataHandler.h
│ │ ├── CKLBDebugger.cpp
│ │ ├── CKLBDebugger.h
│ │ ├── CKLBGameApplication.cpp
│ │ ├── CKLBGameApplication.h
│ │ ├── CKLBGameApplicationDebugModule.cpp
│ │ ├── CKLBGenericTask.cpp
│ │ ├── CKLBGenericTask.h
│ │ ├── CKLBIntervalTimer.cpp
│ │ ├── CKLBIntervalTimer.h
│ │ ├── CKLBLibRegistrator.cpp
│ │ ├── CKLBLibRegistrator.h
│ │ ├── CKLBLifeCtrlTask.cpp
│ │ ├── CKLBLifeCtrlTask.h
│ │ ├── CKLBLuaEnv.cpp
│ │ ├── CKLBLuaEnv.h
│ │ ├── CKLBLuaPropTask.cpp
│ │ ├── CKLBLuaPropTask.h
│ │ ├── CKLBLuaTask.cpp
│ │ ├── CKLBLuaTask.h
│ │ ├── CKLBObject.cpp
│ │ ├── CKLBObject.h
│ │ ├── CKLBPauseCtrl.cpp
│ │ ├── CKLBPauseCtrl.h
│ │ ├── CKLBScriptEnv.h
│ │ ├── CKLBStream.cpp
│ │ ├── CKLBTask.cpp
│ │ ├── CKLBTask.h
│ │ ├── CKLBTextTempBuffer.cpp
│ │ ├── CKLBTextTempBuffer.h
│ │ ├── CKLBUITask.cpp
│ │ ├── CKLBUITask.h
│ │ ├── CKLBUtility.cpp
│ │ ├── CKLBUtility.h
│ │ ├── CLuaState.cpp
│ │ ├── CLuaState.h
│ │ ├── CPFInterface.cpp
│ │ ├── DebugAlloc.cpp
│ │ ├── DebugAlloc.h
│ │ ├── DebugTracker.cpp
│ │ ├── DebugTracker.h
│ │ ├── Dictionnary.cpp
│ │ ├── Dictionnary.h
│ │ ├── ITmpFile.cpp
│ │ ├── Message.h
│ │ └── encryptFile.cpp
│ ├── Database/
│ │ ├── CKLBDatabase.cpp
│ │ ├── CKLBDatabase.h
│ │ ├── CKLBLanguageDatabase.cpp
│ │ ├── CKLBLanguageDatabase.h
│ │ ├── CKLBLuaDB.cpp
│ │ ├── CKLBLuaDB.h
│ │ ├── DataSet.h
│ │ ├── DataSet_JSonDB.cpp
│ │ └── DataSet_JSonDB.h
│ ├── HTTP/
│ │ ├── CKLBHTTPInterface.cpp
│ │ ├── CKLBHTTPInterface.h
│ │ ├── CKLBJsonItem.cpp
│ │ ├── CKLBJsonItem.h
│ │ ├── CKLBNetAPI.cpp
│ │ ├── CKLBNetAPI.h
│ │ ├── CKLBNetAPIKeyChain.cpp
│ │ ├── CKLBNetAPIKeyChain.h
│ │ ├── CKLBStoreService.cpp
│ │ ├── CKLBStoreService.h
│ │ ├── CKLBUpdate.cpp
│ │ ├── CKLBUpdate.h
│ │ ├── CUnZip.cpp
│ │ ├── CUnZip.h
│ │ ├── MultithreadedNetwork.cpp
│ │ └── MultithreadedNetwork.h
│ ├── LuaLib/
│ │ ├── CKLBLuaConst.cpp
│ │ ├── CKLBLuaConst.h
│ │ ├── CKLBLuaLibAPP.cpp
│ │ ├── CKLBLuaLibAPP.h
│ │ ├── CKLBLuaLibASSET.cpp
│ │ ├── CKLBLuaLibASSET.h
│ │ ├── CKLBLuaLibBIN.cpp
│ │ ├── CKLBLuaLibBIN.h
│ │ ├── CKLBLuaLibCONV.cpp
│ │ ├── CKLBLuaLibCONV.h
│ │ ├── CKLBLuaLibDATA.cpp
│ │ ├── CKLBLuaLibDATA.h
│ │ ├── CKLBLuaLibDB.cpp
│ │ ├── CKLBLuaLibDB.h
│ │ ├── CKLBLuaLibDEBUG.cpp
│ │ ├── CKLBLuaLibDEBUG.h
│ │ ├── CKLBLuaLibENG.cpp
│ │ ├── CKLBLuaLibENG.h
│ │ ├── CKLBLuaLibFONT.cpp
│ │ ├── CKLBLuaLibFONT.h
│ │ ├── CKLBLuaLibGL.cpp
│ │ ├── CKLBLuaLibGL.h
│ │ ├── CKLBLuaLibHASH.cpp
│ │ ├── CKLBLuaLibHASH.h
│ │ ├── CKLBLuaLibKEY.cpp
│ │ ├── CKLBLuaLibKEY.h
│ │ ├── CKLBLuaLibLANG.cpp
│ │ ├── CKLBLuaLibLANG.h
│ │ ├── CKLBLuaLibMatrix.cpp
│ │ ├── CKLBLuaLibMatrix.h
│ │ ├── CKLBLuaLibRES.cpp
│ │ ├── CKLBLuaLibRES.h
│ │ ├── CKLBLuaLibSOUND.cpp
│ │ ├── CKLBLuaLibSOUND.h
│ │ ├── CKLBLuaLibTASK.cpp
│ │ ├── CKLBLuaLibTASK.h
│ │ ├── CKLBLuaLibUI.cpp
│ │ ├── CKLBLuaLibUI.h
│ │ ├── ILuaFuncLib.cpp
│ │ └── ILuaFuncLib.h
│ ├── Rendering/
│ │ ├── CBuffer.cpp
│ │ ├── CFrame.cpp
│ │ ├── CImageBuffer.cpp
│ │ ├── CIndexBuffer.cpp
│ │ ├── CKLBCanvasSprite.cpp
│ │ ├── CKLBCanvasSprite.h
│ │ ├── CKLBRendering.h
│ │ ├── CKLBRenderingManager.cpp
│ │ ├── CKLBSprite3D.cpp
│ │ ├── CKLBSprite3D.h
│ │ ├── CRenderingManager.cpp
│ │ ├── CRenderingManager_GL1.cpp
│ │ ├── CRenderingManager_GL2.cpp
│ │ ├── CShaderSet.cpp
│ │ ├── CShaderSetInstance.cpp
│ │ ├── CTexture.cpp
│ │ ├── CTextureBase.cpp
│ │ ├── CTextureUsage.cpp
│ │ ├── UTF8Parse.h
│ │ ├── UTF8Parser.c
│ │ ├── glWrapper.cpp
│ │ ├── glWrapper.h
│ │ └── shaderSource.inl
│ ├── SceneGraph/
│ │ ├── CKLBNode.cpp
│ │ └── CKLBNode.h
│ ├── Scripting/
│ │ ├── CKLBGCTask.cpp
│ │ ├── CKLBGCTask.h
│ │ ├── CKLBScriptEnv_forCSharp.cpp
│ │ ├── CKLBScriptEnv_forCpp.cpp
│ │ ├── CKLBScriptEnv_forLUA.cpp
│ │ ├── CallbackDef.h
│ │ ├── CallbackDef.inl
│ │ ├── ExportListC_Likefunction.cpp
│ │ └── ExportListC_Likefunction.h
│ ├── Sound/
│ │ ├── CSoundAnalysis.cpp
│ │ ├── CSoundAnalysisMP3.cpp
│ │ └── CSoundAnalysisMP3.h
│ ├── SystemTask/
│ │ ├── CKLBDebugMenu.cpp
│ │ ├── CKLBDebugMenu.h
│ │ ├── CKLBDeviceKeyEvent.cpp
│ │ ├── CKLBDeviceKeyEvent.h
│ │ ├── CKLBDrawTask.cpp
│ │ ├── CKLBDrawTask.h
│ │ ├── CKLBLuaScript.cpp
│ │ ├── CKLBLuaScript.h
│ │ ├── CKLBOSCtrlEvent.cpp
│ │ ├── CKLBOSCtrlEvent.h
│ │ ├── CKLBTouchEventUI.cpp
│ │ ├── CKLBTouchEventUI.h
│ │ ├── CKLBTouchPad.cpp
│ │ └── CKLBTouchPad.h
│ ├── UISystem/
│ │ ├── CKLBActivityIndicatorNode.cpp
│ │ ├── CKLBActivityIndicatorNode.h
│ │ ├── CKLBDragCallbackIF.cpp
│ │ ├── CKLBDragCallbackIF.h
│ │ ├── CKLBFormGroup.cpp
│ │ ├── CKLBFormGroup.h
│ │ ├── CKLBFormIF.cpp
│ │ ├── CKLBFormIF.h
│ │ ├── CKLBLabelNode.cpp
│ │ ├── CKLBLabelNode.h
│ │ ├── CKLBModalStack.cpp
│ │ ├── CKLBModalStack.h
│ │ ├── CKLBMovieNode.cpp
│ │ ├── CKLBMovieNode.h
│ │ ├── CKLBNodeAnimPack.cpp
│ │ ├── CKLBNodeAnimPack.h
│ │ ├── CKLBScrMgrDefault.cpp
│ │ ├── CKLBScrMgrDefault.h
│ │ ├── CKLBScrMgrPage.cpp
│ │ ├── CKLBScrMgrPage.h
│ │ ├── CKLBScrMgrSolid.cpp
│ │ ├── CKLBScrMgrSolid.h
│ │ ├── CKLBScrollBarIF.cpp
│ │ ├── CKLBScrollBarIF.h
│ │ ├── CKLBTextInputNode.cpp
│ │ ├── CKLBTextInputNode.h
│ │ ├── CKLBUIActivityIndicator.cpp
│ │ ├── CKLBUIActivityIndicator.h
│ │ ├── CKLBUIButton.cpp
│ │ ├── CKLBUIButton.h
│ │ ├── CKLBUICanvas.cpp
│ │ ├── CKLBUICanvas.h
│ │ ├── CKLBUIClip.cpp
│ │ ├── CKLBUIClip.h
│ │ ├── CKLBUIControl.cpp
│ │ ├── CKLBUIControl.h
│ │ ├── CKLBUIDebugItem.cpp
│ │ ├── CKLBUIDebugItem.h
│ │ ├── CKLBUIDragIcon.cpp
│ │ ├── CKLBUIDragIcon.h
│ │ ├── CKLBUIForm.cpp
│ │ ├── CKLBUIForm.h
│ │ ├── CKLBUIFreeVertItem.cpp
│ │ ├── CKLBUIFreeVertItem.h
│ │ ├── CKLBUIGroup.cpp
│ │ ├── CKLBUIGroup.h
│ │ ├── CKLBUILabel.cpp
│ │ ├── CKLBUILabel.h
│ │ ├── CKLBUIList.cpp
│ │ ├── CKLBUIList.h
│ │ ├── CKLBUIMoviePlayer.cpp
│ │ ├── CKLBUIMoviePlayer.h
│ │ ├── CKLBUIMultiImgItem.cpp
│ │ ├── CKLBUIMultiImgItem.h
│ │ ├── CKLBUIPieChart.cpp
│ │ ├── CKLBUIPieChart.h
│ │ ├── CKLBUIPolyline.cpp
│ │ ├── CKLBUIPolyline.h
│ │ ├── CKLBUIProgressBar.cpp
│ │ ├── CKLBUIProgressBar.h
│ │ ├── CKLBUIRubberBand.cpp
│ │ ├── CKLBUIRubberBand.h
│ │ ├── CKLBUISWFPlayer.cpp
│ │ ├── CKLBUISWFPlayer.h
│ │ ├── CKLBUIScale9.cpp
│ │ ├── CKLBUIScale9.h
│ │ ├── CKLBUIScore.cpp
│ │ ├── CKLBUIScore.h
│ │ ├── CKLBUIScrollBar.cpp
│ │ ├── CKLBUIScrollBar.h
│ │ ├── CKLBUISimpleItem.cpp
│ │ ├── CKLBUISimpleItem.h
│ │ ├── CKLBUISystem.cpp
│ │ ├── CKLBUISystem.h
│ │ ├── CKLBUITextInput.cpp
│ │ ├── CKLBUITextInput.h
│ │ ├── CKLBUITouchPad.cpp
│ │ ├── CKLBUITouchPad.h
│ │ ├── CKLBUIVariableItem.cpp
│ │ ├── CKLBUIVariableItem.h
│ │ ├── CKLBUIVirtualDoc.cpp
│ │ ├── CKLBUIVirtualDoc.h
│ │ ├── CKLBUIWebArea.cpp
│ │ ├── CKLBUIWebArea.h
│ │ ├── CKLBWebViewNode.cpp
│ │ ├── CKLBWebViewNode.h
│ │ ├── IMgrEntry.cpp
│ │ └── IMgrEntry.h
│ └── include/
│ ├── CPFInterface.h
│ ├── CSoundAnalysis.h
│ ├── KLBPlatformMetricsCommon.h
│ ├── RenderingFramework.h
│ ├── encryptFile.h
│ ├── encryptUserContext.h
│ ├── mem.h
│ └── unistd.h
├── README.md
├── SampleProject/
│ ├── CSharp/
│ │ ├── Program.cs
│ │ ├── Properties/
│ │ │ └── AssemblyInfo.cs
│ │ ├── SampleGame.csproj
│ │ ├── SampleGame.sln
│ │ └── ToCompile/
│ │ ├── Program.cs
│ │ ├── Properties/
│ │ │ └── AssemblyInfo.cs
│ │ └── ToCompile.csproj
│ ├── Cpp/
│ │ ├── framework.cpp
│ │ ├── framework.h
│ │ └── out.cpp
│ └── game/
│ ├── CSampleProjectEntrance.cpp
│ └── CSampleProjectEntrance.h
├── Tests/
│ ├── OSX/
│ │ ├── testcases_osx/
│ │ │ └── DummyTest.cpp
│ │ └── xcode/
│ │ ├── Config/
│ │ │ ├── DebugProject.xcconfig
│ │ │ ├── FrameworkTarget.xcconfig
│ │ │ ├── General.xcconfig
│ │ │ ├── ReleaseProject.xcconfig
│ │ │ ├── StaticLibraryTarget.xcconfig
│ │ │ └── TestTarget.xcconfig
│ │ ├── Resources/
│ │ │ └── Info.plist
│ │ ├── Samples/
│ │ │ └── FrameworkSample/
│ │ │ ├── Info.plist
│ │ │ ├── WidgetFramework.xcodeproj/
│ │ │ │ └── project.pbxproj
│ │ │ ├── runtests.sh
│ │ │ ├── widget.cc
│ │ │ ├── widget.h
│ │ │ └── widget_test.cc
│ │ ├── Scripts/
│ │ │ ├── runtests.sh
│ │ │ └── versiongenerate.py
│ │ └── gtest.xcodeproj/
│ │ └── project.pbxproj
│ ├── Win32/
│ │ └── msvc/
│ │ ├── gtest-md.sln
│ │ ├── gtest-md.vcproj
│ │ ├── gtest.sln
│ │ ├── gtest.vcproj
│ │ ├── gtest_main-md.vcproj
│ │ ├── gtest_main.vcproj
│ │ ├── gtest_prod_test-md.vcproj
│ │ ├── gtest_prod_test.vcproj
│ │ ├── gtest_unittest-md.vcproj
│ │ └── gtest_unittest.vcproj
│ ├── gtest/
│ │ ├── CHANGES
│ │ ├── CMakeLists.txt
│ │ ├── CONTRIBUTORS
│ │ ├── LICENSE
│ │ ├── Makefile.am
│ │ ├── Makefile.in
│ │ ├── README
│ │ ├── aclocal.m4
│ │ ├── build-aux/
│ │ │ ├── config.guess
│ │ │ ├── config.h.in
│ │ │ ├── config.sub
│ │ │ ├── depcomp
│ │ │ ├── install-sh
│ │ │ ├── ltmain.sh
│ │ │ └── missing
│ │ ├── cmake/
│ │ │ └── internal_utils.cmake
│ │ ├── codegear/
│ │ │ ├── gtest.cbproj
│ │ │ ├── gtest.groupproj
│ │ │ ├── gtest_all.cc
│ │ │ ├── gtest_link.cc
│ │ │ ├── gtest_main.cbproj
│ │ │ └── gtest_unittest.cbproj
│ │ ├── configure
│ │ ├── configure.ac
│ │ ├── fused-src/
│ │ │ └── gtest/
│ │ │ ├── gtest-all.cc
│ │ │ ├── gtest.h
│ │ │ └── gtest_main.cc
│ │ ├── include/
│ │ │ └── gtest/
│ │ │ ├── gtest-death-test.h
│ │ │ ├── gtest-message.h
│ │ │ ├── gtest-param-test.h
│ │ │ ├── gtest-param-test.h.pump
│ │ │ ├── gtest-printers.h
│ │ │ ├── gtest-spi.h
│ │ │ ├── gtest-test-part.h
│ │ │ ├── gtest-typed-test.h
│ │ │ ├── gtest.h
│ │ │ ├── gtest_pred_impl.h
│ │ │ ├── gtest_prod.h
│ │ │ └── internal/
│ │ │ ├── gtest-death-test-internal.h
│ │ │ ├── gtest-filepath.h
│ │ │ ├── gtest-internal.h
│ │ │ ├── gtest-linked_ptr.h
│ │ │ ├── gtest-param-util-generated.h
│ │ │ ├── gtest-param-util-generated.h.pump
│ │ │ ├── gtest-param-util.h
│ │ │ ├── gtest-port.h
│ │ │ ├── gtest-string.h
│ │ │ ├── gtest-tuple.h
│ │ │ ├── gtest-tuple.h.pump
│ │ │ ├── gtest-type-util.h
│ │ │ └── gtest-type-util.h.pump
│ │ ├── m4/
│ │ │ ├── acx_pthread.m4
│ │ │ ├── gtest.m4
│ │ │ ├── libtool.m4
│ │ │ ├── ltoptions.m4
│ │ │ ├── ltsugar.m4
│ │ │ ├── ltversion.m4
│ │ │ └── lt~obsolete.m4
│ │ ├── make/
│ │ │ └── Makefile
│ │ ├── samples/
│ │ │ ├── prime_tables.h
│ │ │ ├── sample1.cc
│ │ │ ├── sample1.h
│ │ │ ├── sample10_unittest.cc
│ │ │ ├── sample1_unittest.cc
│ │ │ ├── sample2.cc
│ │ │ ├── sample2.h
│ │ │ ├── sample2_unittest.cc
│ │ │ ├── sample3-inl.h
│ │ │ ├── sample3_unittest.cc
│ │ │ ├── sample4.cc
│ │ │ ├── sample4.h
│ │ │ ├── sample4_unittest.cc
│ │ │ ├── sample5_unittest.cc
│ │ │ ├── sample6_unittest.cc
│ │ │ ├── sample7_unittest.cc
│ │ │ ├── sample8_unittest.cc
│ │ │ └── sample9_unittest.cc
│ │ ├── scripts/
│ │ │ ├── fuse_gtest_files.py
│ │ │ ├── gen_gtest_pred_impl.py
│ │ │ ├── gtest-config.in
│ │ │ ├── pump.py
│ │ │ └── test/
│ │ │ └── Makefile
│ │ ├── src/
│ │ │ ├── gtest-all.cc
│ │ │ ├── gtest-death-test.cc
│ │ │ ├── gtest-filepath.cc
│ │ │ ├── gtest-internal-inl.h
│ │ │ ├── gtest-port.cc
│ │ │ ├── gtest-printers.cc
│ │ │ ├── gtest-test-part.cc
│ │ │ ├── gtest-typed-test.cc
│ │ │ ├── gtest.cc
│ │ │ └── gtest_main.cc
│ │ └── test/
│ │ ├── gtest-death-test_ex_test.cc
│ │ ├── gtest-death-test_test.cc
│ │ ├── gtest-filepath_test.cc
│ │ ├── gtest-linked_ptr_test.cc
│ │ ├── gtest-listener_test.cc
│ │ ├── gtest-message_test.cc
│ │ ├── gtest-options_test.cc
│ │ ├── gtest-param-test2_test.cc
│ │ ├── gtest-param-test_test.cc
│ │ ├── gtest-param-test_test.h
│ │ ├── gtest-port_test.cc
│ │ ├── gtest-printers_test.cc
│ │ ├── gtest-test-part_test.cc
│ │ ├── gtest-tuple_test.cc
│ │ ├── gtest-typed-test2_test.cc
│ │ ├── gtest-typed-test_test.cc
│ │ ├── gtest-typed-test_test.h
│ │ ├── gtest-unittest-api_test.cc
│ │ ├── gtest_all_test.cc
│ │ ├── gtest_break_on_failure_unittest.py
│ │ ├── gtest_break_on_failure_unittest_.cc
│ │ ├── gtest_catch_exceptions_test.py
│ │ ├── gtest_catch_exceptions_test_.cc
│ │ ├── gtest_color_test.py
│ │ ├── gtest_color_test_.cc
│ │ ├── gtest_env_var_test.py
│ │ ├── gtest_env_var_test_.cc
│ │ ├── gtest_environment_test.cc
│ │ ├── gtest_filter_unittest.py
│ │ ├── gtest_filter_unittest_.cc
│ │ ├── gtest_help_test.py
│ │ ├── gtest_help_test_.cc
│ │ ├── gtest_list_tests_unittest.py
│ │ ├── gtest_list_tests_unittest_.cc
│ │ ├── gtest_main_unittest.cc
│ │ ├── gtest_no_test_unittest.cc
│ │ ├── gtest_output_test.py
│ │ ├── gtest_output_test_.cc
│ │ ├── gtest_output_test_golden_lin.txt
│ │ ├── gtest_pred_impl_unittest.cc
│ │ ├── gtest_premature_exit_test.cc
│ │ ├── gtest_prod_test.cc
│ │ ├── gtest_repeat_test.cc
│ │ ├── gtest_shuffle_test.py
│ │ ├── gtest_shuffle_test_.cc
│ │ ├── gtest_sole_header_test.cc
│ │ ├── gtest_stress_test.cc
│ │ ├── gtest_test_utils.py
│ │ ├── gtest_throw_on_failure_ex_test.cc
│ │ ├── gtest_throw_on_failure_test.py
│ │ ├── gtest_throw_on_failure_test_.cc
│ │ ├── gtest_uninitialized_test.py
│ │ ├── gtest_uninitialized_test_.cc
│ │ ├── gtest_unittest.cc
│ │ ├── gtest_xml_outfile1_test_.cc
│ │ ├── gtest_xml_outfile2_test_.cc
│ │ ├── gtest_xml_outfiles_test.py
│ │ ├── gtest_xml_output_unittest.py
│ │ ├── gtest_xml_output_unittest_.cc
│ │ ├── gtest_xml_test_utils.py
│ │ ├── production.cc
│ │ └── production.h
│ ├── iOS/
│ │ └── xcode/
│ │ ├── Config/
│ │ │ ├── DebugProject.xcconfig
│ │ │ ├── FrameworkTarget.xcconfig
│ │ │ ├── General.xcconfig
│ │ │ ├── ReleaseProject.xcconfig
│ │ │ ├── StaticLibraryTarget.xcconfig
│ │ │ └── TestTarget.xcconfig
│ │ ├── Resources/
│ │ │ └── Info.plist
│ │ ├── Samples/
│ │ │ └── FrameworkSample/
│ │ │ ├── Info.plist
│ │ │ ├── WidgetFramework.xcodeproj/
│ │ │ │ └── project.pbxproj
│ │ │ ├── runtests.sh
│ │ │ ├── widget.cc
│ │ │ ├── widget.h
│ │ │ └── widget_test.cc
│ │ ├── Scripts/
│ │ │ ├── runtests.sh
│ │ │ └── versiongenerate.py
│ │ └── gtest.xcodeproj/
│ │ └── project.pbxproj
│ └── testcases_common/
│ └── CKLBNodeRenderCountTest.cpp
├── Tools/
│ └── Toboggan/
│ ├── .gitignore
│ ├── KLBToolHost.application
│ ├── KLBToolHost.exe.config
│ ├── KLBToolHost.exe.manifest
│ ├── README.ja.md
│ ├── ServiceStack.Common.xml
│ ├── ServiceStack.Interfaces.xml
│ ├── ServiceStack.Redis.xml
│ ├── ServiceStack.Text.xml
│ ├── ServiceStack.xml
│ ├── mac-setup.sh
│ ├── nunit.framework.xml
│ └── prjTemplate/
│ └── start.lua
└── Tutorial/
├── 01.SimpleItem/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── SimpleItem.lua
│ │ │ ├── itemimage.png.imag
│ │ │ ├── start.lua
│ │ │ └── textureBoat.texb
│ │ └── iphone/
│ │ ├── SimpleItem.lua
│ │ ├── itemimage.png.imag
│ │ ├── start.lua
│ │ └── textureBoat.texb
│ ├── SimpleItem.lua
│ ├── itemimage.png.xml
│ ├── start.lua
│ └── textureBoat.xml
├── 02.Score/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Score-0.png.imag
│ │ │ ├── Score-1.png.imag
│ │ │ ├── Score-2.png.imag
│ │ │ ├── Score-3.png.imag
│ │ │ ├── Score-4.png.imag
│ │ │ ├── Score-5.png.imag
│ │ │ ├── Score-6.png.imag
│ │ │ ├── Score-7.png.imag
│ │ │ ├── Score-8.png.imag
│ │ │ ├── Score-9.png.imag
│ │ │ ├── Score.lua
│ │ │ ├── scoreTexture.texb
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Score-0.png.imag
│ │ ├── Score-1.png.imag
│ │ ├── Score-2.png.imag
│ │ ├── Score-3.png.imag
│ │ ├── Score-4.png.imag
│ │ ├── Score-5.png.imag
│ │ ├── Score-6.png.imag
│ │ ├── Score-7.png.imag
│ │ ├── Score-8.png.imag
│ │ ├── Score-9.png.imag
│ │ ├── Score.lua
│ │ ├── scoreTexture.texb
│ │ └── start.lua
│ ├── Score-0.png.xml
│ ├── Score-1.png.xml
│ ├── Score-2.png.xml
│ ├── Score-3.png.xml
│ ├── Score-4.png.xml
│ ├── Score-5.png.xml
│ ├── Score-6.png.xml
│ ├── Score-7.png.xml
│ ├── Score-8.png.xml
│ ├── Score-9.png.xml
│ ├── Score.lua
│ ├── scoreTexture.xml
│ └── start.lua
├── 03.PieChart/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── PieChart.lua
│ │ │ ├── PieTex.texb
│ │ │ ├── piechart.png.imag
│ │ │ ├── start.lua
│ │ │ └── trash.png.imag
│ │ └── iphone/
│ │ ├── PieChart.lua
│ │ ├── PieTex.texb
│ │ ├── piechart.png.imag
│ │ ├── start.lua
│ │ └── trash.png.imag
│ ├── PieChart.lua
│ ├── PieTex.xml
│ ├── piechart.png.xml
│ ├── start.lua
│ └── trash.png.xml
├── 04.ProgressBar/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Progress.lua
│ │ │ ├── prog_h_empty.png.imag
│ │ │ ├── prog_h_full.png.imag
│ │ │ ├── progress.texb
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Progress.lua
│ │ ├── prog_h_empty.png.imag
│ │ ├── prog_h_full.png.imag
│ │ ├── progress.texb
│ │ └── start.lua
│ ├── Progress.lua
│ ├── prog_h_empty.png.xml
│ ├── prog_h_full.png.xml
│ ├── progress.xml
│ └── start.lua
├── 05.Polyline/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Polyline.lua
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Polyline.lua
│ │ └── start.lua
│ ├── Polyline.lua
│ └── start.lua
├── 06.TextBox/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── TextBox.lua
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── TextBox.lua
│ │ └── start.lua
│ ├── TextBox.lua
│ └── start.lua
├── 07.Label/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ │ ├── AlexBrush-Regular-OTF.otf
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ ├── AlexBrush-Regular-OTF.otf
│ │ └── start.lua
│ ├── Alex Brush SIL OFL Font License 1.1.txt
│ ├── AlexBrush-Regular-OTF.otf
│ ├── AlexBrush-Regular-OTF.otf.publish
│ └── start.lua
├── 08.DragIcon/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── DragIcon.lua
│ │ │ ├── dragicon.png.imag
│ │ │ ├── dragmark.png.imag
│ │ │ ├── iconassets.texb
│ │ │ ├── putimg.png.imag
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── DragIcon.lua
│ │ ├── dragicon.png.imag
│ │ ├── dragmark.png.imag
│ │ ├── iconassets.texb
│ │ ├── putimg.png.imag
│ │ └── start.lua
│ ├── DragIcon.lua
│ ├── dragicon.png.xml
│ ├── dragmark.png.xml
│ ├── iconassets.xml
│ ├── putimg.png.xml
│ └── start.lua
├── 09.RubberBand/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── RBitem.texb
│ │ │ ├── RubberBand.lua
│ │ │ ├── joint.png.imag
│ │ │ ├── origin.png.imag
│ │ │ ├── point.png.imag
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── RBitem.texb
│ │ ├── RubberBand.lua
│ │ ├── joint.png.imag
│ │ ├── origin.png.imag
│ │ ├── point.png.imag
│ │ └── start.lua
│ ├── RBitem.xml
│ ├── RubberBand.lua
│ ├── joint.png.xml
│ ├── origin.png.xml
│ ├── point.png.xml
│ └── start.lua
├── 10.IntervalTimer/
│ ├── .publish/
│ │ ├── android/
│ │ │ └── start.lua
│ │ └── iphone/
│ │ └── start.lua
│ └── start.lua
├── 11.LangTest/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── start.lua
│ │ │ └── tableScheme.db_
│ │ └── iphone/
│ │ ├── start.lua
│ │ └── tableScheme.db_
│ ├── .server/
│ │ └── lang_tbl.csv
│ ├── lang_tbl.csv
│ ├── start.lua
│ └── tableScheme.csql
├── 12.FreeVertItem/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── FreeVertItem.lua
│ │ │ ├── TileA.png.imag
│ │ │ ├── TileB.png.imag
│ │ │ ├── TileC.png.imag
│ │ │ ├── start.lua
│ │ │ └── texture.texb
│ │ └── iphone/
│ │ ├── FreeVertItem.lua
│ │ ├── TileA.png.imag
│ │ ├── TileB.png.imag
│ │ ├── TileC.png.imag
│ │ ├── start.lua
│ │ └── texture.texb
│ ├── FreeVertItem.lua
│ ├── TileA.png.xml
│ ├── TileB.png.xml
│ ├── TileC.png.xml
│ ├── start.lua
│ └── texture.xml
├── 13.VariableItem/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── VariableItem.lua
│ │ │ ├── itemMask.png.imag
│ │ │ ├── itemimage.png.imag
│ │ │ ├── itemimage2.png.imag
│ │ │ ├── start.lua
│ │ │ └── textureBoat.texb
│ │ └── iphone/
│ │ ├── VariableItem.lua
│ │ ├── itemMask.png.imag
│ │ ├── itemimage.png.imag
│ │ ├── itemimage2.png.imag
│ │ ├── start.lua
│ │ └── textureBoat.texb
│ ├── VariableItem.lua
│ ├── itemMask.png.xml
│ ├── itemimage.png.xml
│ ├── itemimage2.png.xml
│ ├── start.lua
│ └── textureBoat.xml
├── 14.MultiImgItem/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── MultiImgItem.lua
│ │ │ ├── TileA.png.imag
│ │ │ ├── TileB.png.imag
│ │ │ ├── TileC.png.imag
│ │ │ ├── start.lua
│ │ │ └── texture.texb
│ │ └── iphone/
│ │ ├── MultiImgItem.lua
│ │ ├── TileA.png.imag
│ │ ├── TileB.png.imag
│ │ ├── TileC.png.imag
│ │ ├── start.lua
│ │ └── texture.texb
│ ├── MultiImgItem.lua
│ ├── TileA.png.xml
│ ├── TileB.png.xml
│ ├── TileC.png.xml
│ ├── start.lua
│ └── texture.xml
├── 15.Scale9/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Horiz.png.imag
│ │ │ ├── Scale9.lua
│ │ │ ├── Tex.texb
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Horiz.png.imag
│ │ ├── Scale9.lua
│ │ ├── Tex.texb
│ │ └── start.lua
│ ├── Horiz.png.xml
│ ├── Scale9.lua
│ ├── Tex.xml
│ └── start.lua
├── 16.Sound/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── RBtex.texb
│ │ │ ├── RubberBand.lua
│ │ │ ├── bgm.ogg
│ │ │ ├── joint.png.imag
│ │ │ ├── origin.png.imag
│ │ │ ├── point.png.imag
│ │ │ ├── se_drag.ogg
│ │ │ ├── se_off.ogg
│ │ │ ├── se_on.ogg
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── RBtex.texb
│ │ ├── RubberBand.lua
│ │ ├── joint.png.imag
│ │ ├── origin.png.imag
│ │ ├── point.png.imag
│ │ └── start.lua
│ ├── RBtex.xml
│ ├── RubberBand.lua
│ ├── joint.png.xml
│ ├── origin.png.xml
│ ├── point.png.xml
│ └── start.lua
├── 17.VDoc/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ │ ├── AlexBrush-Regular-OTF.otf
│ │ │ ├── VDoc.lua
│ │ │ ├── VDoc2.lua
│ │ │ ├── inline.png.imag
│ │ │ ├── inline2.png.imag
│ │ │ ├── start.lua
│ │ │ └── texture.texb
│ │ └── iphone/
│ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ ├── AlexBrush-Regular-OTF.otf
│ │ ├── VDoc.lua
│ │ ├── VDoc2.lua
│ │ ├── inline.png.imag
│ │ ├── inline2.png.imag
│ │ ├── start.lua
│ │ └── texture.texb
│ ├── Alex Brush SIL OFL Font License 1.1.txt
│ ├── AlexBrush-Regular-OTF.otf
│ ├── AlexBrush-Regular-OTF.otf.publish
│ ├── VDoc.lua
│ ├── VDoc2.lua
│ ├── inline.png.xml
│ ├── inline2.png.xml
│ ├── start.lua
│ └── texture.xml
├── 18.DebugItem/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ │ ├── AlexBrush-Regular-OTF.otf
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ ├── AlexBrush-Regular-OTF.otf
│ │ └── start.lua
│ ├── Alex Brush SIL OFL Font License 1.1.txt
│ ├── AlexBrush-Regular-OTF.otf
│ ├── AlexBrush-Regular-OTF.otf.publish
│ └── start.lua
├── 19.GenericTask/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── GenericTask.lua
│ │ │ ├── genChar2.lua
│ │ │ ├── itemimage.png.imag
│ │ │ ├── start.lua
│ │ │ └── testtex.texb
│ │ └── iphone/
│ │ ├── GenericTask.lua
│ │ ├── genChar2.lua
│ │ ├── itemimage.png.imag
│ │ ├── start.lua
│ │ └── testtex.texb
│ ├── GenericTask.lua
│ ├── genChar2.lua
│ ├── itemimage.png.xml
│ ├── start.lua
│ └── testtex.xml
├── 20.LifeCtrl/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── LifeCtrl.lua
│ │ │ ├── itemimage.png.imag
│ │ │ ├── start.lua
│ │ │ └── textureBoat.texb
│ │ └── iphone/
│ │ ├── LifeCtrl.lua
│ │ ├── itemimage.png.imag
│ │ ├── start.lua
│ │ └── textureBoat.texb
│ ├── LifeCtrl.lua
│ ├── itemimage.png.xml
│ ├── start.lua
│ └── textureBoat.xml
├── 21.Form/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ │ ├── AlexBrush-Regular-OTF.otf
│ │ │ ├── Form.lua
│ │ │ ├── assets/
│ │ │ │ ├── AREA0001_BG.png.imag
│ │ │ │ ├── AVATER0001.png.imag
│ │ │ │ ├── AVATER0002.png.imag
│ │ │ │ ├── AVATER0003.png.imag
│ │ │ │ ├── AVATER0004.png.imag
│ │ │ │ ├── AVATER0005.png.imag
│ │ │ │ ├── AVATER0006.png.imag
│ │ │ │ ├── AVATER0007.png.imag
│ │ │ │ ├── AVATER0008.png.imag
│ │ │ │ ├── BTN_Battle_off.png.imag
│ │ │ │ ├── BTN_Battle_on.png.imag
│ │ │ │ ├── BTN_Close_off.png.imag
│ │ │ │ ├── BTN_Close_on.png.imag
│ │ │ │ ├── BTN_Continue_off.png.imag
│ │ │ │ ├── BTN_Continue_on.png.imag
│ │ │ │ ├── BTN_Do_Again_off.png.imag
│ │ │ │ ├── BTN_Do_Again_on.png.imag
│ │ │ │ ├── BTN_Go_to_next_off.png.imag
│ │ │ │ ├── BTN_Go_to_next_on.png.imag
│ │ │ │ ├── BTN_Invite_to_alliance_off.png.imag
│ │ │ │ ├── BTN_Invite_to_alliance_on.png.imag
│ │ │ │ ├── BTN_Send_comment_off.png.imag
│ │ │ │ ├── BTN_Send_comment_on.png.imag
│ │ │ │ ├── BTN_Skip_off.png.imag
│ │ │ │ ├── BTN_Skip_on.png.imag
│ │ │ │ ├── CARD0001.png.imag
│ │ │ │ ├── CARD0002.png.imag
│ │ │ │ ├── CARD0003.png.imag
│ │ │ │ ├── CARD0004.png.imag
│ │ │ │ ├── CARD0005.png.imag
│ │ │ │ ├── CARD0006.png.imag
│ │ │ │ ├── CARD0007.png.imag
│ │ │ │ ├── CARD0008.png.imag
│ │ │ │ ├── area0001.texb
│ │ │ │ ├── avater.texb
│ │ │ │ ├── bg.texb
│ │ │ │ ├── bg_00.png.imag
│ │ │ │ ├── bg_02.png.imag
│ │ │ │ ├── btn.texb
│ │ │ │ └── card.texb
│ │ │ ├── form.json
│ │ │ ├── form1.json
│ │ │ ├── form1.lua
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ ├── AlexBrush-Regular-OTF.otf
│ │ ├── Form.lua
│ │ ├── assets/
│ │ │ ├── AREA0001_BG.png.imag
│ │ │ ├── AVATER0001.png.imag
│ │ │ ├── AVATER0002.png.imag
│ │ │ ├── AVATER0003.png.imag
│ │ │ ├── AVATER0004.png.imag
│ │ │ ├── AVATER0005.png.imag
│ │ │ ├── AVATER0006.png.imag
│ │ │ ├── AVATER0007.png.imag
│ │ │ ├── AVATER0008.png.imag
│ │ │ ├── BTN_Battle_off.png.imag
│ │ │ ├── BTN_Battle_on.png.imag
│ │ │ ├── BTN_Close_off.png.imag
│ │ │ ├── BTN_Close_on.png.imag
│ │ │ ├── BTN_Continue_off.png.imag
│ │ │ ├── BTN_Continue_on.png.imag
│ │ │ ├── BTN_Do_Again_off.png.imag
│ │ │ ├── BTN_Do_Again_on.png.imag
│ │ │ ├── BTN_Go_to_next_off.png.imag
│ │ │ ├── BTN_Go_to_next_on.png.imag
│ │ │ ├── BTN_Invite_to_alliance_off.png.imag
│ │ │ ├── BTN_Invite_to_alliance_on.png.imag
│ │ │ ├── BTN_Send_comment_off.png.imag
│ │ │ ├── BTN_Send_comment_on.png.imag
│ │ │ ├── BTN_Skip_off.png.imag
│ │ │ ├── BTN_Skip_on.png.imag
│ │ │ ├── CARD0001.png.imag
│ │ │ ├── CARD0002.png.imag
│ │ │ ├── CARD0003.png.imag
│ │ │ ├── CARD0004.png.imag
│ │ │ ├── CARD0005.png.imag
│ │ │ ├── CARD0006.png.imag
│ │ │ ├── CARD0007.png.imag
│ │ │ ├── CARD0008.png.imag
│ │ │ ├── area0001.texb
│ │ │ ├── avater.texb
│ │ │ ├── bg.texb
│ │ │ ├── bg_00.png.imag
│ │ │ ├── bg_02.png.imag
│ │ │ ├── btn.texb
│ │ │ └── card.texb
│ │ ├── form.json
│ │ ├── form1.json
│ │ ├── form1.lua
│ │ └── start.lua
│ ├── Alex Brush SIL OFL Font License 1.1.txt
│ ├── AlexBrush-Regular-OTF.otf
│ ├── AlexBrush-Regular-OTF.otf.publish
│ ├── Form.lua
│ ├── assets/
│ │ ├── AREA0001_BG.png.xml
│ │ ├── AVATER0001.png.xml
│ │ ├── AVATER0002.png.xml
│ │ ├── AVATER0003.png.xml
│ │ ├── AVATER0004.png.xml
│ │ ├── AVATER0005.png.xml
│ │ ├── AVATER0006.png.xml
│ │ ├── AVATER0007.png.xml
│ │ ├── AVATER0008.png.xml
│ │ ├── BTN_Battle_off.png.xml
│ │ ├── BTN_Battle_on.png.xml
│ │ ├── BTN_Close_off.png.xml
│ │ ├── BTN_Close_on.png.xml
│ │ ├── BTN_Continue_off.png.xml
│ │ ├── BTN_Continue_on.png.xml
│ │ ├── BTN_Do_Again_off.png.xml
│ │ ├── BTN_Do_Again_on.png.xml
│ │ ├── BTN_Go_to_next_off.png.xml
│ │ ├── BTN_Go_to_next_on.png.xml
│ │ ├── BTN_Invite_to_alliance_off.png.xml
│ │ ├── BTN_Invite_to_alliance_on.png.xml
│ │ ├── BTN_Send_comment_off.png.xml
│ │ ├── BTN_Send_comment_on.png.xml
│ │ ├── BTN_Skip_off.png.xml
│ │ ├── BTN_Skip_on.png.xml
│ │ ├── CARD0001.png.xml
│ │ ├── CARD0002.png.xml
│ │ ├── CARD0003.png.xml
│ │ ├── CARD0004.png.xml
│ │ ├── CARD0005.png.xml
│ │ ├── CARD0006.png.xml
│ │ ├── CARD0007.png.xml
│ │ ├── CARD0008.png.xml
│ │ ├── area0001.xml
│ │ ├── avater.xml
│ │ ├── bg.xml
│ │ ├── bg_00.png.xml
│ │ ├── bg_02.png.xml
│ │ ├── btn.xml
│ │ └── card.xml
│ ├── form.xml
│ ├── form1.lua
│ ├── form1.xml
│ └── start.lua
├── 22.List/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ │ ├── AlexBrush-Regular-OTF.otf
│ │ │ ├── List.lua
│ │ │ ├── change_tex.png.imag
│ │ │ ├── scr_bar.texb
│ │ │ ├── scrbar.png.imag
│ │ │ ├── start.lua
│ │ │ ├── test_item.json
│ │ │ └── test_tex.png.imag
│ │ └── iphone/
│ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ ├── AlexBrush-Regular-OTF.otf
│ │ ├── List.lua
│ │ ├── change_tex.png.imag
│ │ ├── scr_bar.texb
│ │ ├── scrbar.png.imag
│ │ ├── start.lua
│ │ ├── test_item.json
│ │ └── test_tex.png.imag
│ ├── Alex Brush SIL OFL Font License 1.1.txt
│ ├── AlexBrush-Regular-OTF.otf
│ ├── AlexBrush-Regular-OTF.otf.publish
│ ├── List.lua
│ ├── change_tex.png.xml
│ ├── scr_bar.xml
│ ├── scrbar.png.xml
│ ├── start.lua
│ ├── test_item.xml
│ └── test_tex.png.xml
├── 23.ListSpline/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── assets/
│ │ │ │ ├── AVATAR0001.png.imag
│ │ │ │ ├── AVATAR0002.png.imag
│ │ │ │ ├── Horiz.png.imag
│ │ │ │ ├── Horiz2.png.imag
│ │ │ │ └── texture.texb
│ │ │ ├── list.json
│ │ │ ├── start.lua
│ │ │ ├── ui_item1.json
│ │ │ └── ui_item2.json
│ │ └── iphone/
│ │ ├── assets/
│ │ │ ├── AVATAR0001.png.imag
│ │ │ ├── AVATAR0002.png.imag
│ │ │ ├── Horiz.png.imag
│ │ │ ├── Horiz2.png.imag
│ │ │ └── texture.texb
│ │ ├── list.json
│ │ ├── start.lua
│ │ ├── ui_item1.json
│ │ └── ui_item2.json
│ ├── assets/
│ │ ├── AVATAR0001.png.xml
│ │ ├── AVATAR0002.png.xml
│ │ ├── Horiz.png.xml
│ │ ├── Horiz2.png.xml
│ │ └── texture.xml
│ ├── list.xml
│ ├── start.lua
│ ├── ui_item1.xml
│ └── ui_item2.xml
├── 24.Canvas/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Canvas.lua
│ │ │ ├── TileA.png.imag
│ │ │ ├── TileB.png.imag
│ │ │ ├── TileC.png.imag
│ │ │ ├── start.lua
│ │ │ └── texture.texb
│ │ └── iphone/
│ │ ├── Canvas.lua
│ │ ├── TileA.png.imag
│ │ ├── TileB.png.imag
│ │ ├── TileC.png.imag
│ │ ├── start.lua
│ │ └── texture.texb
│ ├── Canvas.lua
│ ├── TileA.png.xml
│ ├── TileB.png.xml
│ ├── TileC.png.xml
│ ├── start.lua
│ └── texture.xml
├── 25.SWFPlayer/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Char.png.imag
│ │ │ ├── SWFPlayer.lua
│ │ │ ├── TestScale.flsh
│ │ │ ├── movie.flsh
│ │ │ ├── start.lua
│ │ │ └── texture.texb
│ │ └── iphone/
│ │ ├── Char.png.imag
│ │ ├── SWFPlayer.lua
│ │ ├── TestScale.flsh
│ │ ├── movie.flsh
│ │ ├── start.lua
│ │ └── texture.texb
│ ├── Char.png.xml
│ ├── SWFPlayer.lua
│ ├── TestScale.flash.fla
│ ├── TestScale.flash.html
│ ├── TestScale.flash.swf
│ ├── start.lua
│ └── texture.xml
├── 26.ScrollBar/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Horiz.png.imag
│ │ │ ├── Horiz2.png.imag
│ │ │ ├── ScrollBar.lua
│ │ │ ├── Vert.png.imag
│ │ │ ├── Vert2.png.imag
│ │ │ ├── start.lua
│ │ │ └── texture.texb
│ │ └── iphone/
│ │ ├── Horiz.png.imag
│ │ ├── Horiz2.png.imag
│ │ ├── ScrollBar.lua
│ │ ├── Vert.png.imag
│ │ ├── Vert2.png.imag
│ │ ├── start.lua
│ │ └── texture.texb
│ ├── Horiz.png.xml
│ ├── Horiz2.png.xml
│ ├── ScrollBar.lua
│ ├── Vert.png.xml
│ ├── Vert2.png.xml
│ ├── start.lua
│ └── texture.xml
├── Licenses.txt
└── Tutorial.md
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitignore
================================================
# build environment/text editor things
.gradle/
.idea/
local.properties
*.vshost.*
*.suo
*.vcxproj.user
*.csproj.user
*.swp
*.iml
# OS specific temp files
.DS_Store
Thumbs.db
__MACOSX/
# Android template project things
/Engine/porting/Android/.classpath
/Engine/porting/Android/.project
/Engine/porting/Android/.settings/
/Engine/porting/Android/gen/
# Android concrete project things
/Engine/porting/Android/GameEngine-android/bin/
/Engine/porting/Android/GameEngine-android/build/
/Engine/porting/Android/GameEngine-android/gen/
/Engine/porting/Android/GameEngine-android/jni/
/Engine/porting/Android/GameEngine-android/libs/
/Engine/porting/Android/GameEngine-android/obj/
/Engine/porting/Android/GameEngine-android/src/
# iOS
/Engine/porting/iOS/Project/
xcuserdata/
project.xcworkspace/
# object files things
*.exe
*.pdb
*.a
!libcurl.a
*.so
*.dll
================================================
FILE: .travis.yml
================================================
# ref: http://blog.crowdint.com/2013/05/17/android-builds-on-travis-ci-with-maven.html
# ref: http://blog.crowdint.com/2013/05/24/android-builds-on-travis-ci-with-gradle.html
# with some modifications to support Android 4.3
language: java
jdk: oraclejdk7
env:
matrix:
# android-17 is always included
## note: we're using android-17 for building, so android-16 env is disabled here.
# - ANDROID_SDKS=sysimg-16 ANDROID_TARGET=android-16 ANDROID_ABI=armeabi-v7a
- ANDROID_SDKS=android-17,sysimg-17 ANDROID_TARGET=android-17 ANDROID_ABI=armeabi-v7a
- ANDROID_SDKS=android-18,sysimg-18 ANDROID_TARGET=android-18 ANDROID_ABI=armeabi-v7a
before_install:
# Install base Android SDK
- sudo apt-get update -qq
- if [ `uname -m` = x86_64 ]; then sudo apt-get install -qq --force-yes libgd2-xpm ia32-libs ia32-libs-multiarch > /dev/null; fi
- wget http://dl.google.com/android/android-sdk_r22.2.1-linux.tgz
- tar xzf android-sdk_r22.2.1-linux.tgz
- export ANDROID_HOME=$PWD/android-sdk-linux
- export PATH=${PATH}:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools
# Install required components.
# For a full list, run `android list sdk -a --extended`
# Note that sysimg-16 downloads the ARM, x86 and MIPS images (we should optimize this).
# Other relevant API's:
# addon-google_apis-google-16
# yes, we do agree SDK EULA
- echo 'y' | android update sdk --filter platform-tools,android-17,extra-android-support,$ANDROID_SDKS --no-ui --force
- BUILD_TOOLS_ID=`android list sdk --extended -a | grep "build-tools-18.1.0" |cut -d ' ' -f 2`
- echo 'y' | android update sdk -a --filter $BUILD_TOOLS_ID --no-ui --force
- export PATH=${PATH}:${ANDROID_HOME}/build-tools/18.1.0
## disable emulator related things for now
# # Create and start emulator
# - echo no | android create avd --force -n test -t $ANDROID_TARGET --abi $ANDROID_ABI
# - emulator -avd test -no-skin -no-audio -no-window &
## disable emulator related things for now
# before_script:
# - chmod +x wait_for_emulator
# - ./wait_for_emulator
# NDK
- wget http://dl.google.com/android/ndk/android-ndk-r9-linux-x86_64.tar.bz2
- tar jxf android-ndk-r9-linux-x86_64.tar.bz2
- export ANDROID_NDK_ROOT=$PWD/android-ndk-r9
- export PATH=$ANDROID_NDK_ROOT:$PATH
# Android NDK & SDK build
script: ./Engine/porting/Android/GameEngine-android/build.py --rebuild --assemble --project SampleProject
================================================
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/AbstractContainer.cpp
================================================
/*
Copyright 2013 KLab Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#include "include.h"
// Class and struct can have inner class/struct/interface
// They act as a kind of namespace.
// Support Interface inheritance mecanism
AbstractContainer::AbstractContainer()
:m_methods (NULL)
,m_methodCount (0)
,m_members (NULL)
,m_memberCount (0)
,m_accessors (NULL)
,m_accessorCount (0)
,m_pVariables (NULL)
,m_modifier (0)
,m_attribute (NULL)
,m_inheritancesCount (0)
,m_inheritances (NULL)
,m_ancestor (NULL)
,m_bCreateDefaultCtor (false)
,m_bAsGCAbleMember (true)
,m_cacheFullName (NULL)
,m_operator (0)
,m_genericParam (NULL)
,m_ownerInner (NULL)
,m_cppRepresentation (NULL)
,m_csharpRepresentation (NULL)
,m_referenceModifCount(0)
{
m_bIsAbstract = true;
gGlobalClassID++;
}
void AbstractContainer::setGenericParam() {
m_genericParam = popGenericNameList();
}
TypeObject* AbstractContainer::getGenericType(TypeGenericDefinitionEntry* genericSymbol, TypeGenericEntry* genericParams) {
if(m_genericParam) {
TypeGenericDefinitionEntry * pDefGen = m_genericParam;
TypeGenericEntry* pGen = genericParams;
while(pGen && pDefGen && strcmp(pDefGen->m_genericName, genericSymbol->m_genericName)) {
pDefGen = pDefGen->m_pNextGenericEntry;
pGen = pGen->m_pNext;
}
if(!pDefGen && !pGen) {
compilerError(ERR_INTERNAL, "Generic symbol was not found");
return NULL;
}
if(!pDefGen || !pGen) {
compilerError(ERR_INTERNAL, "Wrong number of generic parameters");
return NULL;
}
return pGen->m_instanceType;
}
else {
// Template definition => no instance
return NULL;
}
}
TypeObject* AbstractContainer::getType() {
if (myType.m_typeID == TYPE_UNRESOLVED) {
myType.m_definitionAC = this;
myType.m_isGC_Able = ((this->m_modifier & (ATT_CLASS | ATT_INTERFACE)) != 0);
myType.m_genreID = EGENRE::_ABSTRACTCONTAINER;
myType.m_name = this->getName();
myType.m_typeID = (EnumTypeObject)this->m_uniqueId;
myType.m_res.pSymbol = this;
myType.m_res.pType = &myType;
myType.m_res.symbolType = EGENRE::_ABSTRACTCONTAINER;
}
return &myType;
}
void AbstractContainer::overrideType(TypeObject* pSolvedType) {
myType.m_definitionAC = this;
myType.m_genreID = pSolvedType->m_genreID;
myType.m_isGC_Able = pSolvedType->m_isGC_Able;
myType.m_name = pSolvedType->m_name;
myType.m_res = pSolvedType->m_res;
myType.m_typeID = pSolvedType->m_typeID;
}
AbstractContainer::~AbstractContainer() {
delete[] m_inheritances;
CLEAR(m_methods,m_methodCount);
CLEAR(m_members,m_memberCount);
CLEAR(m_accessors,m_accessorCount);
}
/*virtual*/
int AbstractContainer::getGenre() {
return EGENRE::_ABSTRACTCONTAINER;
}
/*virtual*/
const char* AbstractContainer::getName() {
if(m_cppRepresentation) {
// Nested
return m_cppRepresentation->m_name;
}
else {
return m_name;
}
}
TypeObject* AbstractContainer::getAncestor()
{
NameSpace* nameSpaceContext = this->m_pParent;
//
// Use cached result to speed up, as resolution can be costly and getAncestor is called a lot.
//
if (!m_ancestor) {
int search = 0;
while (search < m_inheritancesCount) {
TypeObject* pType = m_inheritances[search];
pType->getResolvedType(nameSpaceContext);
if (pType->m_definitionAC) {
if (pType->m_definitionAC->m_modifier & (ATT_CLASS | ATT_STRUCT)) { // Struct or Class but not interface.
m_ancestor = pType;
return pType;
}
}
search++;
}
return NULL;
} else {
return m_ancestor;
}
}
void AbstractContainer::addMethod (Method* pMethod) {
EXPAND(m_methodCount, m_methods, pMethod);
pMethod->m_pOwner = this;
}
void AbstractContainer::addMember (Variable* pMember) {
EXPAND(m_memberCount, m_members, pMember);
pMember->m_ownerClass = this;
}
void AbstractContainer::addAccessor (Accessor* pAccess) {
EXPAND(m_accessorCount, m_accessors, pAccess);
pAccess->m_ownerClass = this;
}
AbstractContainer* AbstractContainer::addInheritance(TypeObject* type) {
EXPAND(m_inheritancesCount, m_inheritances, type);
return this;
}
void AbstractContainer::fixInheritance() {
if (m_inheritancesCount == 0) {
addInheritance(&t_OBJECT);
}
}
Variable* AbstractContainer::addVariable(Attribute* attribute, u32 modifier, TypeObject* type, Variable* variable) {
// Member
Variable* pVar = variable;
while (pVar) {
EXPAND(m_memberCount, m_members, pVar);
pVar->setType(type);
pVar->setModifier(modifier);
pVar->setAttribute(attribute);
pVar->m_ownerClass = this;
pVar = pVar->m_pNextVariable;
}
return variable;
}
AbstractContainer* AbstractContainer::addProperty(Attribute* attribute, u32 modifier, TypeObject* type, const char* name, Accessor* accessor) {
for(int i = 0 ; i < strlen(name) ; i ++) {
if(name[i] == '.') {
compilerError(ERR_NOT_SUPPORTED_YET, "Explicit implementation of interfaces is not supported yet");
break;
}
}
bool hasEmptyGetter = accessor->m_get && accessor->m_get->m_statement == NULL;
bool hasEmptySetter = accessor->m_set && accessor->m_set->m_statement == NULL;
if((hasEmptyGetter || hasEmptySetter) && !(m_modifier & ATT_INTERFACE) && !(m_modifier & ATT_ABSTRACT)) {
compilerError(ERR_NOT_SUPPORTED_YET, "Auto-properties are not supported");
}
accessor->setName(name);
accessor->m_type = type;
accessor->m_attribute = attribute;
accessor->m_modifier = modifier;
accessor->m_ownerClass = this;
EXPAND(m_accessorCount, m_accessors, accessor);
return this;
}
AbstractContainer* AbstractContainer::addProperty(Attribute* attribute, u32 modifier, Accessor* indexer) {
bool hasEmptyGetter = indexer->m_get && indexer->m_get->m_statement == NULL;
bool hasEmptySetter = indexer->m_set && indexer->m_set->m_statement == NULL;
if((hasEmptyGetter || hasEmptySetter) && !(m_modifier & ATT_INTERFACE)) {
compilerError(ERR_NOT_SUPPORTED_YET, "Auto-properties are not supported");
}
indexer->m_attribute = attribute;
indexer->m_modifier = modifier | ATT_OPERATOR;
indexer->m_ownerClass = this;
EXPAND(m_accessorCount, m_accessors, indexer);
this->m_operator |= OPOVR_INDEXER;
return this;
}
Method* AbstractContainer::addConstructor(Attribute* attribute, u32 modifier, const char* name, Variable* params, Statement* code, Expression* initializerOpt, s32 optType) {
if(strcmp(m_name, name) != 0) {
compilerError(ERR_INTERNAL, "The class and its constructor have different names");
}
Method* m = new Method();
m->m_codeBlock = code;
m->m_parameters = params;
m->setupHasDefaultParams();
m->m_attribute = attribute;
m->m_modifier = modifier | ATT_CTOR;
m->setName(name);
m->m_pOwner = this;
m->m_initializerOpt = initializerOpt;
m->m_initializerType = optType;
EXPAND(m_methodCount, m_methods, m);
return m;
}
Method* AbstractContainer::addDestructor(Attribute* attribute, u32 modifier, const char* name, Statement* code) {
if(strcmp(m_name, name) != 0) {
compilerError(ERR_INTERNAL, "The class and its destructor have different names");
}
Method* m = new Method();
m->m_codeBlock = code;
m->m_attribute = attribute;
m->m_modifier = modifier | ATT_DTOR;
m->m_pOwner = this;
m->setName(name);
EXPAND(m_methodCount, m_methods, m);
return m;
}
Method* AbstractContainer::addMethod(Attribute* attribute, u32 modifier, const char* name, Variable* params, Statement* code, TypeObject* returnType) {
for(int i = 0 ; i < strlen(name) ; i ++) {
if(name[i] == '.') {
compilerError(ERR_NOT_SUPPORTED_YET, "Explicit implementation of interfaces is not supported yet");
break;
}
}
Method* m = new Method();
m->setName(name);
m->m_returnType = returnType;
m->m_codeBlock = code;
m->m_parameters = params;
m->setupHasDefaultParams();
m->m_attribute = attribute;
m->m_modifier = modifier;
m->m_pOwner = this;
EXPAND(m_methodCount, m_methods, m);
return m;
}
//Finds a local member
Variable* AbstractContainer::findMember(const char* name)
{
int n=0;
while (n < this->m_memberCount) {
Variable* pVar = this->m_members[n];
if (strcmp(pVar->m_name,name)==0) {
return pVar;
}
n++;
}
return NULL;
}
//Finds a local method
Method* AbstractContainer::findMethod(const char* name, Expression* signature, TypeGenericEntry* genParams)
{
Method* ret = NULL;
MethodList* overloadings = new MethodList();
for(int n = 0 ; n < m_methodCount ; n++) {
Method* pMethod = m_methods[n];
if (strcmp(pMethod->m_name,name)==0) {
// Resolve parameters.
Variable* pParameter = pMethod->m_parameters;
while(pParameter) {
pParameter->m_type->m_res = pParameter->m_type->getResolvedType(this, pMethod);
if(pParameter->m_expression) {
// Resolve default value.
// gCurrentMethod and gCurrentAC need to be updated as it can be an external context.
Method* oldCurrentMethod = gCurrentMethod;
AbstractContainer* oldCurrentAC = gCurrentAC;
gCurrentMethod = pMethod;
gCurrentAC = pMethod->m_pOwner;
pParameter->m_expression->AnalysisAndTransform();
gCurrentMethod = oldCurrentMethod;
gCurrentAC = oldCurrentAC;
}
pParameter = pParameter->m_pNextVariable;
}
overloadings->add(pMethod);
if((genParams != NULL) && (pMethod->m_genericParam == NULL)) {
continue;
}
switch(compareSignatures(pMethod->m_parameters, signature)) {
case EMATCH::M_IDENTICAL :
return pMethod;
case EMATCH::M_APPLICABLE :
if(!ret || isBetterFunctionMember(pMethod->m_parameters, ret->m_parameters, signature)) {
ret = pMethod;
}
break;
case EMATCH::M_MISMATCH :
break;
default :
compilerError(ERR_INTERNAL, "Unknown comparison result");
break;
}
}
}
if(ret) {
return ret;
}
else if(overloadings->m_count == 1) {
return overloadings->m_method;
}
else if(overloadings->m_count > 0) {
return overloadings;
}
else {
return NULL;
}
}
//Version for delegate signatures
Method* AbstractContainer::findMethod(const char* name, Variable* signature, TypeGenericEntry* genParams)
{
Method* ret = NULL;
MethodList* overloadings = new MethodList();
for(int n = 0 ; n < m_methodCount ; n++) {
Method* pMethod = m_methods[n];
if (strcmp(pMethod->m_name,name)==0) {
// Resolve parameters.
Variable* pParameter = pMethod->m_parameters;
while(pParameter) {
pParameter->m_type->m_res = pParameter->m_type->getResolvedType(this, pMethod);
if(pParameter->m_expression) {
// Resolve default value.
// gCurrentMethod and gCurrentAC need to be updated as it can be an external context.
Method* oldCurrentMethod = gCurrentMethod;
AbstractContainer* oldCurrentAC = gCurrentAC;
gCurrentMethod = pMethod;
gCurrentAC = pMethod->m_pOwner;
pParameter->m_expression->AnalysisAndTransform();
gCurrentMethod = oldCurrentMethod;
gCurrentAC = oldCurrentAC;
}
pParameter = pParameter->m_pNextVariable;
}
overloadings->add(pMethod);
if(genParams != NULL) {
// TODO : use getGenericType()
}
switch(compareSignatures(pMethod->m_parameters, signature)) {
case EMATCH::M_IDENTICAL :
return pMethod;
case EMATCH::M_APPLICABLE :
if(!ret || isBetterFunctionMember(pMethod->m_parameters, ret->m_parameters, signature)) {
ret = pMethod;
}
break;
case EMATCH::M_MISMATCH :
break;
default :
compilerError(ERR_INTERNAL, "Unknown comparison result");
break;
}
}
}
if(ret) {
return ret;
}
else if(overloadings->m_count == 1) {
return overloadings->m_method;
}
else if(overloadings->m_count > 0) {
return overloadings;
}
else {
return NULL;
}
}
Method* AbstractContainer::findDestructor()
{
for(int n = 0 ; n < m_methodCount ; n++) {
if(m_methods[n]->m_modifier & ATT_DTOR) {
return m_methods[n];
}
}
return NULL;
}
//Finds a local property
Accessor* AbstractContainer::findProperty(const char* name)
{
int n=0;
while (n < this->m_accessorCount) {
Accessor* pProperty = this->m_accessors[n];
if(pProperty->m_variable == NULL) {
if (strcmp(pProperty->m_name,name)==0) {
return pProperty;
}
}
else {
// Indexer accessors do not have a name
}
n++;
}
return NULL;
}
Accessor* AbstractContainer::findPropertyIndexer(Expression* solvedSignatureList) {
for (int n=0; n < this->m_accessorCount; n++) {
Accessor* pAcc = this->m_accessors[n];
if ((pAcc->m_modifier & ATT_OPERATOR) != 0) {
int count = 0;
Variable* pVar = pAcc->m_variable;
while (pVar) { count++; pVar = pVar->m_pNextVariable; }
// TODO : differentiate only with parameter count, not with type !
if (solvedSignatureList->m_expressionCount == count) {
return pAcc;
}
}
}
return NULL;
}
AbstractContainer* CreateInternal(Attribute* attribute, u32 modifier, const char* name) {
// Find name in current name space ? --> Partial definition.
NameSpace* fNewWorkingSpace = gCurrentNameSpace->findNameSpace(name);
AbstractContainer* pCnt;
if (!fNewWorkingSpace) {
pCnt = new AbstractContainer();
pCnt->m_attribute = attribute;
pCnt->m_modifier = modifier;
pCnt->m_noDump = g_noDump;
pCnt->setName(name);
gCurrentNameSpace->addAbstractContainer(pCnt);
if (gCurrentNameSpace->getGenre() == EGENRE::_ABSTRACTCONTAINER && ((modifier & ATTRB_ANONDELEGATE) == 0)) {
// Create an unnested C++ equivalent
pCnt->m_ownerInner = (AbstractContainer*)gCurrentNameSpace;
AbstractContainer* pCntCpp = new AbstractContainer();
char buff[1024];
static int gInnerClassOut = 0;
sprintf(buff,"%s_inner%i",name,gInnerClassOut++);
pCntCpp->setName(buff);
pCntCpp->m_csharpRepresentation = pCnt;
pCnt->m_cppRepresentation = pCntCpp;
pCntCpp->m_attribute = attribute;
pCntCpp->m_modifier = modifier;
pCntCpp->m_noDump = g_noDump;
NameSpace* pureNameSpace = gCurrentNameSpace;
while (pureNameSpace->getGenre() == EGENRE::_ABSTRACTCONTAINER) {
pureNameSpace = pureNameSpace->m_pParent;
}
pureNameSpace->addAbstractContainer(pCntCpp);
}
} else {
// Previous class definition is reused.
pCnt = (AbstractContainer*)fNewWorkingSpace;
}
PushSpace(gCurrentNameSpace);
gCurrentNameSpace = pCnt;
return pCnt;
}
AbstractContainer* CreateClass (Attribute* attribute, u32 modifier, const char* name) {
return CreateInternal(attribute, modifier | ATT_CLASS, name);
}
AbstractContainer* CreateStruct(Attribute* attribute, u32 modifier, const char* name) {
return CreateInternal(attribute, modifier | ATT_STRUCT, name);
}
AbstractContainer* CreateInterface(Attribute* attribute, u32 modifier, const char* name) {
return CreateInternal(attribute, modifier | ATT_INTERFACE, name);
}
================================================
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/AbstractContainer.h
================================================
/*
Copyright 2013 KLab Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#ifndef ABSTRACTCONTAINER_H
#define ABSTRACTCONTAINER_H
#include "BaseType.h"
#include "NameSpace.h"
#include "TypeObject.h"
// Class and struct can have inner class/struct/interface
// They act as a kind of namespace.
// Support Interface inheritance mecanism
class AbstractContainer : public NameSpace {
public:
AbstractContainer();
~AbstractContainer();
virtual int getGenre();
virtual const char* getName();
TypeObject* getType();
AbstractContainer* addInheritance(TypeObject* type);
void fixInheritance();
Variable* addVariable(Attribute* attribute, u32 modifier, TypeObject* type, Variable* variable);
AbstractContainer* addProperty(Attribute* attribute, u32 modifier, TypeObject* type, const char* name, Accessor* accessor);
AbstractContainer* addProperty(Attribute* attribute, u32 modifier, Accessor* indexer);
Method* addConstructor(Attribute* attribute, u32 modifier, const char* name, Variable* params, Statement* code, Expression* initializerOpt, s32 optType);
Method* addDestructor(Attribute* attribute, u32 modifier, const char* name, Statement* code);
Method* addMethod(Attribute* attribute, u32 modifier, const char* name, Variable* params, Statement* code, TypeObject* returnType);
Variable* findMember(const char* name);
Method* findMethod(const char* name, Expression* signature, TypeGenericEntry* genParams);
Method* findMethod(const char* name, Variable* signature, TypeGenericEntry* genParams);
Method* findDestructor();
Accessor* findProperty(const char* name);
Accessor* findPropertyIndexer(Expression* solvedSignatureList);
void setGenericParam();
TypeObject* getGenericType(TypeGenericDefinitionEntry* genericSymbol, TypeGenericEntry* genericParams);
void addMethod (Method* pMethod);
void addMember (Variable* pMember);
void addAccessor (Accessor* pAccess);
TypeObject* getAncestor ();
const char* getTemplateParams ();
void dumpTemplateLabel ();
void dumpFriends ();
void dumpNested ();
void dumpPrototype (bool isInnerClass);
void realDumpPrototype (bool isInnerClass, const char* fullName);
void analyzeComplete ();
void dumpInlineMethods (const char* prefix);
void dumpAccessors (const char* prefix);
void dumpImplementation (const char* prevNameSpace);
void dumpMarshalledStruct(Variable* pVar);
void generateMemberProcessGCCode();
void generateMemberReleaseGCCode();
void generateMemberAssignCode();
void generateMemberMoveRefCode();
void generateMemberRefCode(AbstractContainer* pCtx);
const char* generateTypeID();
TypeGenericDefinitionEntry* m_genericParam;
Method** m_methods;
int m_methodCount;
Variable** m_members;
int m_memberCount;
Accessor** m_accessors;
int m_accessorCount;
TypeObject** m_inheritances;
int m_inheritancesCount;
AbstractContainer* m_ownerInner;
AbstractContainer* m_cppRepresentation;
AbstractContainer* m_csharpRepresentation;
TypeObject* m_ancestor;
Attribute* m_attribute;
u32 m_modifier;
u32 m_operator;
u32 m_referenceModifCount;
bool m_bCreateDefaultCtor;
bool m_bAsGCAbleMember;
const char* m_cacheFullName;
Variable* m_pVariables;
TypeObject myType;
void overrideType(TypeObject* pSolvedType);
};
/*
class Member {
public:
bool m_isConst;
TypeObject* m_type;
u32 m_attribute;
};*/
AbstractContainer* CreateClass (Attribute* attribute, u32 modifier, const char* name);
AbstractContainer* CreateStruct(Attribute* attribute, u32 modified, const char* name);
AbstractContainer* CreateInterface(Attribute* attribute, u32 modified, const char* name);
#endif ABSTRACT_CONTAINER_H
================================================
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Accessor.cpp
================================================
/*
Copyright 2013 KLab Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#include "compilerLibrary.h"
Accessor::Accessor ()
:m_attribute (NULL)
,m_type (NULL)
,m_get (NULL)
,m_set (NULL)
,m_indexer (NULL)
,m_statement (NULL)
,m_ownerClass (NULL)
,m_variable (NULL)
,m_modifier (0)
{
}
Accessor::~Accessor()
{
}
/*virtual*/
int Accessor::getGenre() {
return EGENRE::_ACCESSOR;
}
void Accessor::dumpParams(bool call, bool addComma) {
Variable* pVar = m_variable;
if(pVar) {
NameSpace* context = (NameSpace*)m_ownerClass;
while(pVar) {
if(!call) {
printf("%s ", pVar->m_type->dumpTypeForCode(context));
}
printf("%s", pVar->m_name);
pVar = pVar->m_pNextVariable;
if(pVar) {
printf(", ");
}
}
if(addComma) {
printf(", ");
}
}
}
================================================
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Attribute.cpp
================================================
/*
Copyright 2013 KLab Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#include "include.h"
SStructInfo::SStructInfo()
:m_charSet (-1)
,m_pack (-1)
,m_layoutKind (-1)
{
}
Attribute::Attribute()
:m_expression (NULL)
,m_type (NULL)
,m_next (NULL)
,m_child (NULL)
,m_specifier (0)
{
}
Attribute::~Attribute()
{
delete m_expression;
delete m_type;
delete m_next;
delete m_child;
}
Attribute* Attribute::addChildAttribute(Attribute* pChild) {
Attribute* p = m_child;
if (p) {
while (p->m_next) { p = p->m_next; }
p->m_next = pChild;
} else {
m_child = pChild;
}
return this;
}
Attribute* Attribute::addAttribute(TypeObject* type, Expression* expr)
{
Attribute* pNewAttr = new Attribute();
Attribute* p = this;
while (p->m_next) { p = p->m_next; }
p->m_next = pNewAttr;
this->m_expression = expr;
this->m_type = type;
return this;
}
Attribute* Attribute::setSpecifier(u32 specifierAttrb)
{
this->m_specifier |= specifierAttrb;
return this;
}
void Attribute::getMarshallingInfo(SMarshallingInfo& out_marshallingInfo) {
//TODO : complete
if(m_child) {
m_child->getMarshallingInfo(out_marshallingInfo);
}
if(m_next) {
m_next->getMarshallingInfo(out_marshallingInfo);
}
if(m_expression) {
if(strcmp(m_type->m_name, "StructLayout") == 0) {
m_expression->getStructInfo(out_marshallingInfo.m_structInfo);
} else {
//TODO
}
}
}
Attribute* CreateAttribute(TypeObject* type, Expression* expr) {
Attribute* attr = new Attribute();
attr->m_expression = expr;
attr->m_type = type;
if (type) {
if (strcmp(type->getName(),"DllImport") == 0) {
// Mark the attribute with an "external" tag as hint.
attr->m_specifier |= ATT_EXTERN;
bool callConv = false;
if (expr) {
if (expr->m_expressionType == EXPR_LIST) {
int n = 0;
while (n < expr->m_expressionCount) {
Expression* p = expr->m_expressions[n];
if (p->m_expressionType == EXPR_ASS_EQ) {
if (p->m_expressionCount == 2) {
if ((p->m_expressions[0]->m_expressionType == EXPR_IDENT) && (p->m_expressions[1]->m_expressionType == EXPR_DOT)) {
if (strcmp(p->m_expressions[0]->m_text, "CallingConvention") == 0) {
if (strcmp(p->m_expressions[1]->m_text, "Cdecl")!=0) {
compilerError(ERR_NOT_SUPPORTED_YET, "Do NOT support other interface convention than Cdecl for now, please check your DllImport attribute");
} else {
callConv = true;
}
}
}
}
}
n++;
}
}
}
if (callConv == false) {
compilerError(ERR_USER, "Calling convention not defined at all, for now 'Cdecl' is the only supported convention.");
}
}
}
return attr;
}
Attribute* CreateAttributeWithChild(Attribute* attr) {
Attribute* newAttr = new Attribute();
newAttr->addChildAttribute(attr);
return newAttr;
}
================================================
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Attribute.h
================================================
/*
Copyright 2013 KLab Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#ifndef ATTRIBUTE_H
#define ATTRIBUTE_H
#include "BaseType.h"
typedef struct SStructInfo {
public:
s32 m_charSet;
s32 m_pack;
s32 m_layoutKind;
SStructInfo();
} SStructInfo ;
typedef struct {
public:
SStructInfo m_structInfo;
} SMarshallingInfo ;
class Attribute {
public:
Attribute();
~Attribute();
Attribute* addAttribute(TypeObject* type, Expression* expr); // return this
Attribute* addChildAttribute(Attribute* attr);
Attribute* setSpecifier(u32 specifierAttrb);
void getMarshallingInfo(SMarshallingInfo& out_marshallingInfo);
TypeObject* m_type;
Expression* m_expression;
Attribute* m_next;
Attribute* m_child;
u32 m_specifier;
};
Attribute* CreateAttribute(TypeObject* type, Expression* expr);
Attribute* CreateAttributeWithChild(Attribute* attr);
#endif //ATTRIBUTE_H
================================================
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/BaseType.h
================================================
/*
Copyright 2013 KLab Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#ifndef BASETYPE_H
#define BASETYPE_H
#include <string>
#include <iostream>
#pragma warning( disable : 4996 )
#pragma warning( disable : 4482 )
#define EXPAND(count,arr,item) expand(&count,(void***)&arr,(void*)item)
#define CLEAR(a,b) for (int n=0; n < b; n++) {\
delete a[n];\
} delete[] a; b = 0; a = NULL
#define CS_Assert(a,b) ;
#define CS_assertAlways(a) ;
// -----------------------------------------------------------------------
// Global Types
// -----------------------------------------------------------------------
typedef int s32;
typedef unsigned int u32;
typedef short s16;
typedef unsigned short u16;
typedef char s8;
typedef unsigned char u8;
typedef long long s64;
typedef unsigned long long u64;
typedef unsigned int ptrAsInt;
typedef u16 uniChar;
typedef u32 uint;
typedef u8 byte;
typedef s8 sbyte;
#ifndef NULL
#define NULL (0)
#endif
// -----------------------------------------------------------------------
// Classes used by the compiler to describe all the item in the C# Language.
// -----------------------------------------------------------------------
/** Base class for all named symbol **/
class SymbolDictionnary;
class Symbol;
class AbstractContainer; // Struct, Class, Interface use same holder to simplify implementation.
class Accessor;
class Attribute;
class Argument;
class Enum;
class Method;
class NameSpace;
class Uses;
class TypeObject;
class Expression;
class Statement;
class Variable;
class Indexer;
class Delegate;
enum EGENRE {
_UNDEFGENRE = 0,
_ABSTRACTCONTAINER = 0x0001,
_DELEGATE = 0x0002,
_ENUM = 0x0004,
_MEMBER = 0x0008,
_VARIABLE = 0x0010,
_METHOD = 0x0020,
_ACCESSOR = 0x0040,
_STATEMENT = 0x0080,
_NAMESPACE = 0x0100,
_ENUMENTRY = 0x0200,
_GENDEFENTRY = 0x0400,
_METHODLIST = 0x0800,
};
struct SRSymbol {
Symbol* pSymbol;
EGENRE symbolType;
TypeObject* pType;
void dump(bool assignSide);
};
struct StringID {
int m_id;
const char* m_str;
StringID* m_next;
bool m_isDumped;
};
struct SValue {
SValue();
union {
double d;
float f;
s64 l;
u64 ul;
s32 i;
u32 ui;
const char* str;
void* ptr;
} v;
int type;
int strLen;
StringID* pString;
static int operatorType(SValue& a, SValue& b);
SValue ToType (int type);
};
// -----------------------------------------------------------------------
// Defined Type used by the compiler for :
// - Differenciate type within an abstract container
// - Differenciate user type from predefined type
// - Native type from instances of objets/ref
// -----------------------------------------------------------------------
const u32 ET_CLASS = 0x01000000;
const u32 ET_INTERFACE = 0x02000000;
const u32 ET_STRUCT = 0x03000000;
const u32 ET_COMPLEXMASK = 0x0000FFFF;
const u32 ET_INFOMASK = 0x00F00000;
const u32 ET_PRIMITIVEMASK= 0xFF000000;
const u32 ET_USERSPACE = 0x00800000;
const u32 _TYPE_USEROBJECT= ET_USERSPACE;
const u32 ET_PREINSTALL = 0x00400000;
const u32 ET_ARRAY = 0x00200000;
const u32 ET_BASETYPE = 0x80000000;
const u32 ET_SIGNEDTYPE = 0x40000000;
const u32 ET_NUMBER = 0x20000000;
const u32 ET_POINTER = 0x10000000;
const u32 ET_SIZE_1 = 1;
const u32 ET_SIZE_2 = 2;
const u32 ET_SIZE_4 = 4;
const u32 ET_SIZE_8 = 8;
const u32 ET_VOID = ET_BASETYPE | 0;
const u32 ET_BOOL = ET_BASETYPE | 0x11;
const u32 ET_NULL = ET_BASETYPE | 0x12;
const u32 ET_INTPTR = ET_BASETYPE | 0x13;
const u32 ET_INT8 = ET_BASETYPE | ET_SIGNEDTYPE | ET_SIZE_1;
const u32 ET_INT16 = ET_BASETYPE | ET_SIGNEDTYPE | ET_SIZE_2;
const u32 ET_INT32 = ET_BASETYPE | ET_SIGNEDTYPE | ET_SIZE_4;
const u32 ET_INT64 = ET_BASETYPE | ET_SIGNEDTYPE | ET_SIZE_8;
const u32 ET_UINT8 = ET_BASETYPE | ET_SIZE_1;
const u32 ET_UINT16 = ET_BASETYPE | ET_SIZE_2;
const u32 ET_UINT32 = ET_BASETYPE | ET_SIZE_4;
const u32 ET_UINT64 = ET_BASETYPE | ET_SIZE_8;
const u32 ET_CHAR = ET_UINT16 | 0x20; // Just to make sure that CHAR and UINT16 have actually a unique code.
const u32 ET_FLOAT = ET_BASETYPE | ET_NUMBER | ET_SIZE_4;
const u32 ET_DOUBLE = ET_BASETYPE | ET_NUMBER | ET_SIZE_8;
//
// Standard Types
//
enum EnumTypeObject {
TYPE_UNRESOLVED = 0x7FFFFFFF,
TYPE_UNDEFINED = TYPE_UNRESOLVED,
TYPE_SBYTE = ET_INT8,
TYPE_BYTE = ET_UINT8,
TYPE_SHORT = ET_INT16,
TYPE_USHORT = ET_UINT16,
TYPE_INT = ET_INT32,
TYPE_UINT = ET_UINT32,
TYPE_LONG = ET_INT64,
TYPE_ULONG = ET_UINT64,
TYPE_CHAR = ET_CHAR,
TYPE_FLOAT = ET_FLOAT,
TYPE_DOUBLE = ET_DOUBLE,
TYPE_BOOL = ET_BOOL,
TYPE_OBJECT = ET_CLASS | ET_PREINSTALL | 0xFFFF, // Object is 0xFFFF
TYPE_STRING = ET_CLASS | ET_PREINSTALL | 0xFFFC, // String is 0xFFFC
TYPE_ARRAY = ET_CLASS | ET_PREINSTALL | 0xFFFB, // Array is 0xFFFB
TYPE_DELEGATE = ET_CLASS | ET_PREINSTALL | 0xFFFA, // Delegate is 0xFFFA
TYPE_VOID = ET_VOID,
TYPE_INTPTR = ET_INTPTR,
TYPE_NULL = ET_NULL // Only in constant int type.
};
//
// Standard Attributes
//
enum EATTRIBUTE {
ATT_STATIC = 0x00000001,
ATT_PUBLIC = 0x00000002,
ATT_PRIVATE = 0x00000004,
ATT_PROTECTED = 0x00000008,
ATT_INTERNAL = 0x00000010,
ATT_UNSAFE = 0x00000020,
ATT_VIRTUAL = 0x00000040,
ATT_FINAL = 0x00000080,
ATT_NATIVE = 0x00000100,
ATT_ABSTRACT = 0x00000200,
ATT_OPERATOR = 0x00000400,
ATT_READONLY = 0x00000800,
ATT_VOLATILE = 0x00001000,
ATT_CTOR = 0x00002000,
ATT_DTOR = 0x00004000,
ATT_NEW = 0x00008000,
ATT_CONST = 0x00010000, // Same as read only ?
ATT_SEALED = 0x00000080, // Same as FINAL
ATT_EXTERN = 0x00020000,
ATT_PARTIAL = 0x00000400, // Same as OPERATOR but no conflict : use only for class/interface/struct.
ATTR_NEW = 0x00040000,
// Attribute type
ATTRB_ASSEMBLY = 0x80000000,
ATTRB_ANONDELEGATE = 0x40000000, // Same as FIELD.
ATTRB_FIELD = 0x40000000,
ATTRB_EVENT = 0x20000000,
ATTRB_METHOD = 0x10000000,
ATTRB_MODULE = 0x08000000,
ATTRB_PARAM = 0x04000000,
ATTRB_PROPERTY = 0x02000000,
ATTRB_RETURN = 0x01000000,
ATTRB_TYPE = 0x00800000,
// Attribute for param.
ATT_REF = 0x00400000,
ATT_OUT = 0x00200000,
ATT_CLASS = 0x00100000,
ATT_STRUCT = 0x00080000,
ATT_INTERFACE = 0x00040000, // Same as new.
};
//
// All possible expression AST type.
//
enum EnumExpressionType {
// Multiple
EXPR_LIST,
EXPR_LIST_INIT,
// Create a delegate code, class definition, etc...
EXPR_DELEGATECREATE,
// Leaf
EXPR_THIS,
EXPR_UNDER_THIS, // Internal special this for delegate implementation.
EXPR_TYPEOF, // + Type
EXPR_BASE,
EXPR_CTE,
EXPR_IDENT,
// Single
EXPR_REF,
EXPR_PLUSPLUS,
EXPR_MINUSMINUS,
EXPR_ARROW, // + Id
EXPR_NOT, // !
EXPR_LNOT, // ~
EXPR_ADRESSOF,
EXPR_SIZEOF, // + Type
EXPR_PREINCR,
EXPR_PREDECR,
EXPR_UNARYPLUS,
EXPR_UNARYMINUS,
EXPR_UNARYMULT,
EXPR_IS,
EXPR_AS,
EXPR_UNCHECKED,
EXPR_CHECKED,
// Double & Single
EXPR_ACCESS, // + Expr|Id
EXPR_NEW, // + Type
// Double
EXPR_DOT,
EXPR_INVOKE,
EXPR_CAST,
EXPR_CAST_PTR,
EXPR_MULT,
EXPR_DIV,
EXPR_MOD,
EXPR_PLUS,
EXPR_MINUS,
EXPR_LSHFT,
EXPR_RSHFT,
EXPR_LESS,
EXPR_MORE,
EXPR_LESSEQ,
EXPR_MOREEQ,
EXPR_EQUTST,
EXPR_DIFFTST,
EXPR_LAND,
EXPR_LXOR,
EXPR_LOR,
EXPR_AND,
EXPR_OR,
EXPR_XOR,
// Double (Assignment)
EXPR_ASS_EQ,
EXPR_ASS_PLUSEQ,
EXPR_ASS_MINUSEQ,
EXPR_ASS_STAREQ,
EXPR_ASS_DIVEQ,
EXPR_ASS_MODEQ,
EXPR_ASS_XOREQ,
EXPR_ASS_ANDEQ,
EXPR_ASS_OREQ,
EXPR_ASS_RSHFTEQ,
EXPR_ASS_LSHFTEQ,
// Triple
EXPR_COND,
};
enum EnumStatementType {
STM_UNDEFINED,
STM_BLOCK,
STM_NILWRAPPER, // Empty expression.
STM_NULL,
STM_LABEL,
STM_LOCALVAR,
STM_LOCAL_PERVAR,
STM_WRAP_EXP,
STM_ASSIGN_EXPR,
STM_WRAPPER_POSTINCR,
STM_WRAPPER_POSTDECR,
STM_WRAPPER_PREINCR,
STM_WRAPPER_PREDECR,
STM_IF,
STM_SWITCH,
STM_CASE,
STM_CASEDEFAULT,
STM_UNSAFE,
STM_WHILE,
STM_DOWHILE,
STM_FOR,
STM_FOREACH,
STM_BREAK,
STM_CONTINUE,
STM_GOTO,
STM_GOTOCASE,
STM_GOTODEFAULT,
STM_RETURN,
STM_THROW,
STM_TRY,
STM_CATCH,
STM_FINALLY,
STM_CHECKED,
STM_UNCHECKED,
STM_LOCK,
STM_USING,
};
enum EOVEROP {
OP_PLUS,
OP_MINUS,
OP_LNOT,
OP_NOT,
OP_PLUSPLUS,
OP_MINUSMINUS,
OP_TRUE,
OP_FALSE,
OP_MULT,
OP_DIV,
OP_MOD,
OP_AND,
OP_OR,
OP_XOR,
OP_LSHFT,
OP_RSHFT,
OP_EQUAL,
OP_DIFF,
OP_MORE,
OP_LESS,
OP_MOREEQ,
OP_LESSEQ,
};
enum ECOMPARISON {
COMP_BETTER,
COMP_EQUIVALENT,
COMP_WORSE,
};
enum EMATCH {
M_IDENTICAL,
M_APPLICABLE,
M_MISMATCH,
};
// -----------------------------------------------------------------------
// Compiler Specific Define & Functions
// -----------------------------------------------------------------------
enum EnumError {
ERR_INTERNAL,
ERR_NOT_SUPPORTED,
ERR_NOT_SUPPORTED_YET,
ERR_USER,
ERR_COMMAND_LINE,
};
// Compiler options
const u32 COMPIL_USE_FRAMEWORK = 0x00000001;
const u32 COMPIL_IS_FRAMEWORK = 0x00000002;
const u32 COMPIL_MODE_IGNORE = 0x00000004;
void compilerError(EnumError err, const char* format, int lineNumber = -1);
void expand(int* count, void*** array_, void* newEntry);
#endif //BASETYPE_H
================================================
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/CompilerProject.cpp
================================================
/*
Copyright 2013 KLab Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
// CompilerProject.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "y.tab.h"
#include "dirent.h"
#include "compilerLibrary.h"
extern int yylineno;
struct SCmdLineInfos {
public :
const char* userPath;
const char* frameworkPath;
const char* outputPath;
const char* parsedFiles[50];
int parsedFileCount;
bool compileFramework;
bool ignoreMode;
SCmdLineInfos()
:userPath (NULL)
,frameworkPath (NULL)
,outputPath (NULL)
,parsedFileCount (0)
,compileFramework (false)
,ignoreMode (false)
{
}
};
bool contains(const char** nameArray, int size, const char* name)
{
if(nameArray && name)
{
for(int i=0 ; i<size ; i++)
{
if(strcmp(nameArray[i], name) == 0)
{
return true;
}
}
}
return false;
}
bool isFile(const char* path)
{
for(int i = strlen(path); i >= 0 && path[i] != '\\' ; i--) {
if(path[i] == '.')
{
return true;
}
}
return false;
}
bool isValid(const char* path)
{
for(int i = 0 ; i < (int)strlen(path) ; i++) {
if(path[i] == '/') {
return false;
}
}
return true;
}
// Returns the name of the file without its path.
const char* fileName(const char* path)
{
char buf[500];
int i = strlen(path);
for(; i >= 0 && path[i] != '\\' ; i--);
if(path[i] == '\\')
{
memcpy(buf, path + (++i)*sizeof(char), strlen(path) + 1 - i);
return strdup(buf);
}
return strdup(path);
}
u16* g_stack[500];
u16 g_level;
static const int START_GENERIC = 256;
static const int END_GENERIC = 257;
// a << b > c
// a < b >> c
bool analyzeText(u16* firstChar, u16* lastChar) {
bool inComment = false;
// Only < > , . [ ] a-zA-Z0-9
while (firstChar <= lastChar) {
bool isValid
= (*firstChar == '<') || (*firstChar == '>') || (*firstChar == ',') ||
(*firstChar == '[') || (*firstChar == ']') || (*firstChar == '.');
isValid = isValid || ((*firstChar >= 'A') && (*firstChar <= 'Z'))
|| ((*firstChar >= 'a') && (*firstChar <= 'z'))
|| ((*firstChar >= '0') && (*firstChar <= '9'));
isValid = isValid || (*firstChar <= ' '); // Less than space.
isValid = isValid || (*firstChar == '@');
if (*firstChar == '/') {
if (inComment == false) {
if ((firstChar < lastChar) && (firstChar[1]=='*')) {
inComment = true;
firstChar += 2;
continue;
}
}
}
if (*firstChar == '*') {
if (inComment == true) {
if ((firstChar < lastChar) && (firstChar[1]=='/')) {
inComment = false;
firstChar += 2;
continue;
}
}
}
if ((isValid == false) && (inComment == false)) {
return false;
}
firstChar++;
}
return true;
}
bool patchBlock(int level, u16* pChar) {
if (analyzeText(g_stack[level],pChar-1) == true) {
*(g_stack[level]-1) = START_GENERIC;
*pChar = END_GENERIC;
return true;
} else {
// Do nothing.
return false;
}
}
void patchFile(u16* file, int length) {
u16* pChar = file;
while (pChar != &file[length]) {
if (*pChar == '<') {
// Guard against a << b > c pattern.
// << force next > to be non related.
if ((&pChar[1] != &file[length]) && (pChar[1] == '<')) {
// Do nothing.
} else {
g_stack[g_level++] = pChar+1;
}
}
else
if (*pChar == '>') {
if ((&pChar[1] != &file[length]) && (pChar[1] == '>')) {
if (g_level >= 2) {
// Perform patch parent FIRST
// Then decide from patch or not for child
bool isGeneric = patchBlock(g_level-2, &pChar[1]);
if (isGeneric) {
// Patch
patchBlock(g_level-1, pChar);
} else {
// Do nothing.
}
g_level -= 2;
} else if (g_level == 1) {
g_level--;
}
} else {
if (g_level > 0) {
g_level--;
patchBlock(g_level, pChar);
}
}
}
else
if (*pChar == 0xD) {
while (g_level != 0) {
g_level--;
patchBlock(g_level, pChar);
}
}
pChar++;
}
}
void generate(u16* file, int length, char* result) {
u16* pChar = file;
while (pChar != &file[length]) {
if (*pChar == START_GENERIC) {
*result++ = '$';
*result++ = '<';
} else if (*pChar == END_GENERIC) {
*result++ = '$';
*result++ = '>';
} else {
*result++ = (char)*pChar;
}
pChar++;
}
*result++ = 0;
}
const char* preprocess(const char* input, const char*& allocated8Buff) {
int length = strlen(input) + 1;
// 1. Allocate u16 buffer
u16* pu16 = new u16[length];
u16* fill = pu16;
// 2. Copy 8->16 bit
const char* pOrig = input;
while (*pOrig) {
*fill++ = *pOrig++;
}
*fill++ = 0;
// 3. Parse
patchFile(pu16, length);
// 4. Generate
char* p8 = new char[length*2]; // Need to allocate more in case of.
allocated8Buff = p8;
generate(pu16, length, p8);
return p8;
}
void recurse(const char* folder, const char** parsedFiles, int parsedFileCount, u32 compilerOptions) {
DIR *pDIR;
struct dirent *entry;
bool ignoreMode = ((compilerOptions & COMPIL_MODE_IGNORE) != 0);
if (pDIR=opendir(folder)) {
// Force all the entries in the directory...
while(entry = readdir(pDIR)){
if( strcmp(entry->d_name, ".") != 0 && strcmp(entry->d_name, "..") != 0 ) {
char buff[1000];
sprintf(buff, "%s\\%s",folder, entry->d_name);
recurse(buff, parsedFiles, parsedFileCount, compilerOptions);
}
}
closedir(pDIR);
} else {
// May be a file ?
int strLen = strlen(folder);
if (folder[strLen-3]=='.'
&& folder[strLen-2]=='c'
&& folder[strLen-1]=='s'
&& (parsedFileCount == 0
|| (contains(parsedFiles, parsedFileCount, fileName(folder)) != ignoreMode))) {
fprintf(stderr,"### Try Process File : %s ###\n", folder);
// Load file in memory
FILE* pFile = fopen((const char*)folder, "rb");
if (pFile) {
fprintf(stderr,"### Do Process File : %s ###\n", folder);
fseek (pFile, 0, SEEK_END); // non-portable
int size=ftell (pFile);
char* buff = new char[size+1];
buff[size] = 0; // close file as C string.
rewind (pFile);
fread(buff, size, 1, pFile);
fclose (pFile);
// Test Header.
unsigned char* input = (unsigned char*) buff;
if ((input[0] == 0xEF) && (input[1] == 0xBB) && (input[2] == 0xBF)) {
input += 3;
}
// Pass the stream.
resetLocalFileInfo();
yylineno = 1;
const char* pDelete;
int result = runCompiler(preprocess((const char*)input,pDelete));
delete[] pDelete;
delete[] buff;
}
else {
fprintf(stderr,"### Failed to Open File : %s ###\n", folder);
}
}
}
}
void displayHelp() {
printf("\n");
printf("##############################################################\n");
printf("# Help #\n");
printf("##############################################################\n");
printf("\n");
printf("* Command line options\n");
printf("\n");
printf("-o or -or\n");
printf("Description : Tells the output path (relative).\n");
printf(" If no output option is used, the result will be displayed in the console.\n");
printf("Argument : Output path, including the file name\n");
printf("\n");
printf("-oa\n");
printf("Description : Tells the output path (absolute).\n");
printf(" If no output option is used, the result will be displayed in the console.\n");
printf("Argument : Full output path, including the file name\n");
printf("\n");
printf("-user\n");
printf("Description : Tells the path to the user project directory.\n");
printf(" If this option is not used, the first command line argument needs to be this path.\n");
printf("Argument : Full path to the project directory.\n");
printf("\n");
printf("-framework\n");
printf("Description : When a project which uses the framework is compiled, tells the path to the framework directory.\n");
printf("Argument : Full path to the framework directory.\n");
printf("\n");
printf("-compileframework\n");
printf("Description : Used to compile the framework only.\n");
printf(" In this case, -framework is not used and -user is the path to the framework.\n");
printf("Argument : None.\n");
printf("\n");
printf("-ignore\n");
printf("Description : Rather than parsing the mentioned files only, the compiler will parse all the files \n");
printf(" except the ones which have been enumerated.\n");
printf("Argument : None.\n");
printf("\n");
printf("-h or -help\n");
printf("Description : Displays this menu.\n");
printf("Argument : None.\n");
printf("\n");
printf("* Compilation process\n");
printf("\n");
printf("- Make sure that your C# project compiles in C#.\n");
printf("- Check that it does not contain restricted functionalities.\n");
printf("- Launch the compilation. The basic syntax for the command line is :\n");
printf("\n");
printf(" CompilerProject.exe <path to the project> [<C# file to parse 1> <C# file to parse 2> <...>] [-o <output file name>]\n");
printf("\n");
printf(" If no parsed file is explicited, every C# file of the folder will be recursively parsed.\n");
printf(" For further explanation, see the description of the command line options above.\n");
printf("- Place the inline (.inl) files generated by the compiler into the \"inline\" folder of the \"RuntimeLibrary\" folder.\n");
printf("- If your project uses the game engine framework, you also need to compile it once, as described below.\n");
printf("\n");
printf("* How to compile the framework\n");
printf("\n");
printf("- Launch the compiler with the following command line :\n");
printf("\n");
printf(" CompilerProject.exe <path to the framework folder> -oa <output path> -compileframework\n");
printf("\n");
printf("- Include the generated files (framework.h and framework.cpp) in your C++ project.\n");
printf("- Do not forget to compile the framework again if changes are made in C#.\n");
printf("\n");
system("Pause");
}
bool extractArgs(int argc, const char** argv, SCmdLineInfos* infos)
{
bool relativePath = false;
int i = 1;
if(argc < 2) {
compilerError(ERR_COMMAND_LINE, "No argument for the command line");
return false;
}
//
// List of the avalaible options
// N.B. : Must remain up-to-date, so does optionCount
//
const char* options[] = {
"-compileframework",
"-o",
"-or",
"-oa",
"-user",
"-framework",
"-ignore",
"-h",
"-help",
// Important : Do not forget to update optionCount
};
int optionCount = 9;
// First, check every argument to make sure that paths are written using '\'
for(int n = 0 ; n < argc ; n++) {
if(!isValid(argv[n])) {
compilerError(ERR_COMMAND_LINE, "Please use '\\' rather than '/'");
return false;
}
}
if(!contains(argv, argc, "-user")) {
if(argv[1][0] == '-') {
compilerError(ERR_COMMAND_LINE, "Since -user is not used, the first argument should be the path to the solution");
}
// The first argument is the user path
infos->userPath = concat(argv[i++]);
}
for(; i < argc ; i++) {
if(argv[i][0] == '-') {
//
// Options
//
if(!contains(options, optionCount, argv[i])) {
compilerError(ERR_COMMAND_LINE, concat2(argv[i], " : unknown command line option"));
return false;
}
// Options with no argument
else if(!strcmp(argv[i], "-compileframework")) { // Recompile the framework
infos->compileFramework = true;
if(contains(argv, argc, "-framework")) {
compilerError(ERR_COMMAND_LINE, "When using -compileframework, use -user instead of -framework to tell the path to the framework");
return false;
}
}
else if(!strcmp(argv[i], "-ignore")) { // The enumerated files will be ignored
infos->ignoreMode = true;
}
else if(!strcmp(argv[i], "-h") || !strcmp(argv[i], "-help")) { // The enumerated files will be ignored
displayHelp();
}
// Options with one argument
else if(i + 1 >= argc) {
compilerError(ERR_COMMAND_LINE, concat2("Missing argument for ", argv[i]));
return false;
}
else if(!strcmp(argv[i], "-o") || !strcmp(argv[i], "-or")) { // Output path (relative)
infos->outputPath = concat(argv[++i]);
relativePath = true;
}
else if(!strcmp(argv[i], "-oa")) { // Output path (absolute)
infos->outputPath = concat(argv[++i]);
}
else if(!strcmp(argv[i], "-user")) { // User file path
infos->userPath = concat(argv[++i]);
}
else if(!strcmp(argv[i], "-framework")) { // Framework file path
infos->frameworkPath = concat(argv[++i]);
}
// Options with two arguments
else if(i + 2 >= argc) {
compilerError(ERR_COMMAND_LINE, concat2("Missing argument for ", argv[i]));
return false;
}/*
else
...
*/
else {
compilerError(ERR_COMMAND_LINE, concat3("Option ", argv[i], "exists but has not been implemented yet"));
return false;
}
}
else {
// Parsed file name
if(infos->parsedFileCount + 1 > 50) {
compilerError(ERR_COMMAND_LINE, "The number of selected parsed files cannot be greater than 50");
return false;
}
infos->parsedFiles[infos->parsedFileCount++] = concat(argv[i]);
}
}
if(infos->compileFramework && infos->outputPath) {
if(isFile(infos->outputPath)) {
compilerError(ERR_COMMAND_LINE, "When using -compileframework, -o should designate a folder");
return false;
}
if(infos->outputPath[strlen(infos->outputPath) - 1] != '\\') {
infos->outputPath = concat2(infos->outputPath, "\\");
}
}
if(relativePath) {
if(infos->userPath[strlen(infos->userPath) - 1] == '\\') {
infos->outputPath = concat2(infos->userPath, infos->outputPath);
}
else{
infos->outputPath = concat3(infos->userPath, "\\", infos->outputPath);
}
}
return true;
}
u32 getCompilerOptions(SCmdLineInfos* infos) {
u32 options = 0;
if(infos->frameworkPath != NULL) {
options |= COMPIL_USE_FRAMEWORK;
}
if(infos->compileFramework) {
options |= COMPIL_IS_FRAMEWORK;
}
if(infos->ignoreMode) {
options |= COMPIL_MODE_IGNORE;
}
return options;
}
int _tmain(int argc, const char* argv[])
{
u32 compilerOptions;
SCmdLineInfos* infos = new SCmdLineInfos();
if(extractArgs(argc, argv, infos)) {
compilerOptions = getCompilerOptions(infos);
// Init code generator.
initBaseType();
g_noDump = true;
g_registerClasses = false;
//
// Load always needed library.
//
recurse("supported.cs", NULL, 0, compilerOptions | ~COMPIL_MODE_IGNORE);
g_registerClasses = true;
if((compilerOptions & COMPIL_USE_FRAMEWORK) != 0) {
// Load the framework librairies
recurse(infos->frameworkPath, NULL, 0, compilerOptions);
}
g_noDump = false;
recurse(infos->userPath, infos->parsedFiles, infos->parsedFileCount, compilerOptions | ~COMPIL_MODE_IGNORE);
yylineno = -1; // Do not parse anymore.
generateOutput(infos->outputPath, compilerOptions);
freopen( "CON", "w", stdout );
}
else {
system("Pause");
}
}
================================================
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/CompilerProject.sln
================================================
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual C++ Express 2010
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CompilerProject", "CompilerProject.vcxproj", "{9F524797-7C48-47EA-86FB-445AEC76533C}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
TestAll|Win32 = TestAll|Win32
TestAssignment|Win32 = TestAssignment|Win32
TestDelegate|Win32 = TestDelegate|Win32
TestDllImport|Win32 = TestDllImport|Win32
TestExpression|Win32 = TestExpression|Win32
TestFramework|Win32 = TestFramework|Win32
TestGeneric|Win32 = TestGeneric|Win32
TestInterface|Win32 = TestInterface|Win32
TestInvoke|Win32 = TestInvoke|Win32
TestRef|Win32 = TestRef|Win32
TestResolution|Win32 = TestResolution|Win32
TestStatement|Win32 = TestStatement|Win32
TestStruct|Win32 = TestStruct|Win32
TestTestSuite|Win32 = TestTestSuite|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{9F524797-7C48-47EA-86FB-445AEC76533C}.Debug|Win32.ActiveCfg = Debug|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.Debug|Win32.Build.0 = Debug|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.Release|Win32.ActiveCfg = Release|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.Release|Win32.Build.0 = Release|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestAll|Win32.ActiveCfg = TestAll|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestAll|Win32.Build.0 = TestAll|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestAssignment|Win32.ActiveCfg = TestAssignment|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestAssignment|Win32.Build.0 = TestAssignment|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestDelegate|Win32.ActiveCfg = TestDelegate|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestDelegate|Win32.Build.0 = TestDelegate|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestDllImport|Win32.ActiveCfg = TestDLLImport|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestDllImport|Win32.Build.0 = TestDLLImport|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestExpression|Win32.ActiveCfg = TestExpression|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestExpression|Win32.Build.0 = TestExpression|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestFramework|Win32.ActiveCfg = TestFramework|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestFramework|Win32.Build.0 = TestFramework|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestGeneric|Win32.ActiveCfg = TestGeneric|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestGeneric|Win32.Build.0 = TestGeneric|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestInterface|Win32.ActiveCfg = TestInterface|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestInterface|Win32.Build.0 = TestInterface|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestInvoke|Win32.ActiveCfg = TestInvoke|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestInvoke|Win32.Build.0 = TestInvoke|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestRef|Win32.ActiveCfg = TestRef|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestRef|Win32.Build.0 = TestRef|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestResolution|Win32.ActiveCfg = TestResolution|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestResolution|Win32.Build.0 = TestResolution|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestStatement|Win32.ActiveCfg = TestStatement|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestStatement|Win32.Build.0 = TestStatement|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestStruct|Win32.ActiveCfg = TestStruct|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestStruct|Win32.Build.0 = TestStruct|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestTestSuite|Win32.ActiveCfg = TestTestSuite|Win32
{9F524797-7C48-47EA-86FB-445AEC76533C}.TestTestSuite|Win32.Build.0 = TestTestSuite|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
================================================
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/CompilerProject.vcxproj
================================================
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestAll|Win32">
<Configuration>TestAll</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestAssignment|Win32">
<Configuration>TestAssignment</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestDelegate|Win32">
<Configuration>TestDelegate</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestDLLImport|Win32">
<Configuration>TestDLLImport</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestExpression|Win32">
<Configuration>TestExpression</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestFramework|Win32">
<Configuration>TestFramework</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestGeneric|Win32">
<Configuration>TestGeneric</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestInterface|Win32">
<Configuration>TestInterface</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestInvoke|Win32">
<Configuration>TestInvoke</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestRef|Win32">
<Configuration>TestRef</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestResolution|Win32">
<Configuration>TestResolution</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestStatement|Win32">
<Configuration>TestStatement</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestStruct|Win32">
<Configuration>TestStruct</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="TestTestSuite|Win32">
<Configuration>TestTestSuite</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{9F524797-7C48-47EA-86FB-445AEC76533C}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>CompilerProject</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestInterface|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestAll|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestFramework|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestAssignment|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestDelegate|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestStruct|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestDLLImport|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestRef|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestGeneric|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestStatement|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestResolution|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestInvoke|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestExpression|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestInterface|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestAll|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestFramework|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestAssignment|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestDelegate|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestStruct|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestDLLImport|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestRef|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestGeneric|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestStatement|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestResolution|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestInvoke|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='TestExpression|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestInterface|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestAll|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestFramework|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestAssignment|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestDelegate|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestStruct|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestDLLImport|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestRef|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestGeneric|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestStatement|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestResolution|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestInvoke|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='TestExpression|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestInterface|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestAll|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestFramework|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestAssignment|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestDelegate|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestStruct|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestDLLImport|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestRef|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestGeneric|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestStatement|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestResolution|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestInvoke|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestExpression|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AssemblerOutput>NoListing</AssemblerOutput>
<ExpandAttributedSource>false</ExpandAttributedSource>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PreBuildEvent>
<Command>build.bat</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<PrecompiledHeader>
</PrecompiledHeader>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='TestTestSuite|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>./;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<Optimization>Disabled</Optimization>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<None Include="csharp.l" />
<None Include="csharp.y" />
<None Include="ReadMe.txt" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="AbstractContainer.h" />
<ClInclude Include="Attribute.h" />
<ClInclude Include="BaseType.h" />
<ClInclude Include="compilerLibrary.h" />
<ClInclude Include="Expression.h" />
<ClInclude Include="include.h" />
<ClInclude Include="NameSpace.h" />
<ClInclude Include="Statement.h" />
<ClInclude Include="stdafx.h" />
<ClInclude Include="Symbol.h" />
<ClInclude Include="targetver.h" />
<ClInclude Include="TypeObject.h" />
<ClInclude Include="UTF8Parse.h" />
<ClInclude Include="Variable.h" />
<ClInclude Include="y.tab.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="AbstractContainer.cpp" />
<ClCompile Include="Accessor.cpp" />
<ClCompile Include="Attribute.cpp" />
<ClCompile Include="compilerLibrary.cpp" />
<ClCompile Include="CompilerProject.cpp" />
<ClCompile Include="csharpcompiler.cpp" />
<ClCompile Include="dirent.c" />
<ClCompile Include="Dump.cpp" />
<ClCompile Include="Expression.cpp" />
<ClCompile Include="Method.cpp" />
<ClCompile Include="NameSpace.cpp" />
<ClCompile Include="Statement.cpp" />
<ClCompile Include="stdafx.cpp" />
<ClCompile Include="Symbol.cpp" />
<ClCompile Include="TypeObject.cpp" />
<ClCompile Include="UTF8Parser.cpp" />
<ClCompile Include="Variable.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
================================================
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/CompilerProject.vcxproj.filters
================================================
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
<Filter Include="Parser">
<UniqueIdentifier>{5f7fee26-b49c-4cd7-8b91-f97d89eb3dbf}</UniqueIdentifier>
</Filter>
<Filter Include="ParserLibrary">
<UniqueIdentifier>{2dd10776-1a21-4c47-857b-99affa50979f}</UniqueIdentifier>
</Filter>
<Filter Include="ParserLibrary\Source">
<UniqueIdentifier>{cc6f60d2-70d1-49fc-bf0a-ca6ca4cb4a90}</UniqueIdentifier>
</Filter>
<Filter Include="ParserLibrary\Header">
<UniqueIdentifier>{1f619903-4890-4af5-9d3f-7e2ee9ef4361}</UniqueIdentifier>
</Filter>
<Filter Include="Dump">
<UniqueIdentifier>{afc5e584-0b9d-4ef0-b56c-a37c37a32d40}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<None Include="ReadMe.txt" />
<None Include="csharp.l">
<Filter>Parser</Filter>
</None>
<None Include="csharp.y">
<Filter>Parser</Filter>
</None>
</ItemGroup>
<ItemGroup>
<ClInclude Include="stdafx.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="targetver.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="y.tab.h">
<Filter>Parser</Filter>
</ClInclude>
<ClInclude Include="include.h">
<Filter>ParserLibrary</Filter>
</ClInclude>
<ClInclude Include="AbstractContainer.h">
<Filter>ParserLibrary\Header</Filter>
</ClInclude>
<ClInclude Include="Attribute.h">
<Filter>ParserLibrary\Header</Filter>
</ClInclude>
<ClInclude Include="BaseType.h">
<Filter>ParserLibrary\Header</Filter>
</ClInclude>
<ClInclude Include="compilerLibrary.h">
<Filter>ParserLibrary\Header</Filter>
</ClInclude>
<ClInclude Include="Expression.h">
<Filter>ParserLibrary\Header</Filter>
</ClInclude>
<ClInclude Include="NameSpace.h">
<Filter>ParserLibrary\Header</Filter>
</ClInclude>
<ClInclude Include="Statement.h">
<Filter>ParserLibrary\Header</Filter>
</ClInclude>
<ClInclude Include="Symbol.h">
<Filter>ParserLibrary\Header</Filter>
</ClInclude>
<ClInclude Include="TypeObject.h">
<Filter>ParserLibrary\Header</Filter>
</ClInclude>
<ClInclude Include="Variable.h">
<Filter>ParserLibrary\Header</Filter>
</ClInclude>
<ClInclude Include="UTF8Parse.h">
<Filter>ParserLibrary\Header</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="stdafx.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="CompilerProject.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="csharpcompiler.cpp">
<Filter>Parser</Filter>
</ClCompile>
<ClCompile Include="dirent.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="AbstractContainer.cpp">
<Filter>ParserLibrary\Source</Filter>
</ClCompile>
<ClCompile Include="Attribute.cpp">
<Filter>ParserLibrary\Source</Filter>
</ClCompile>
<ClCompile Include="compilerLibrary.cpp">
<Filter>ParserLibrary\Source</Filter>
</ClCompile>
<ClCompile Include="Expression.cpp">
<Filter>ParserLibrary\Source</Filter>
</ClCompile>
<ClCompile Include="NameSpace.cpp">
<Filter>ParserLibrary\Source</Filter>
</ClCompile>
<ClCompile Include="Statement.cpp">
<Filter>ParserLibrary\Source</Filter>
</ClCompile>
<ClCompile Include="Symbol.cpp">
<Filter>ParserLibrary\Source</Filter>
</ClCompile>
<ClCompile Include="TypeObject.cpp">
<Filter>ParserLibrary\Source</Filter>
</ClCompile>
<ClCompile Include="Variable.cpp">
<Filter>ParserLibrary\Source</Filter>
</ClCompile>
<ClCompile Include="Accessor.cpp">
<Filter>ParserLibrary\Source</Filter>
</ClCompile>
<ClCompile Include="Method.cpp">
<Filter>ParserLibrary\Source</Filter>
</ClCompile>
<ClCompile Include="Dump.cpp">
<Filter>Dump</Filter>
</ClCompile>
<ClCompile Include="UTF8Parser.cpp">
<Filter>ParserLibrary\Source</Filter>
</ClCompile>
</ItemGroup>
</Project>
================================================
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Dump.cpp
================================================
/*
Copyright 2013 KLab Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#include "include.h"
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include "UTF8Parse.h"
class GCSupport {
public:
static void dumpMemberGC(Variable* var);
static void memberReleaseGC(Variable* var);
static void dumpStructGC(Variable* var, AbstractContainer* cnt);
static void structReleaseGC(Variable* var, AbstractContainer* cnt);
};
void GCSupport::dumpMemberGC(Variable* var)
{ printf("if (%s) { System::Memory::pushList(%s,0); }\n",var->getName(),var->getName()); }
void GCSupport::dumpStructGC(Variable* var, AbstractContainer* cnt)
{ printf("%s._processGC();\n",var->getName()); }
void GCSupport::memberReleaseGC(Variable* var)
{ printf("if (%s && !%s->isFreed()) { %s->_removeRef((System::__GCObject**)&%s); }\n",var->getName(),var->getName(),var->getName(),var->getName()); }
void GCSupport::structReleaseGC(Variable* var, AbstractContainer* cnt)
{ printf("%s._releaseGC();\n",var->getName()); }
//
// Dump Code.
//
void dumpWrapper(Expression* expr, bool safe = false);
void dumpAccessorWrappers(const char* pName, const char* pStrType, bool isNonNum, const char* testDiv, bool isEnum, bool isStatic, bool isNativePtr);
void dumpGlobalInitializerPrototype();
void dumpGlobalInitializerImplementation();
int depth = 0;
void tab() { for (int n=0; n < depth; n++) { printf(" "); } }
void dumpUtf8ToUniChar(const char* str) {
int len = strlen(str);
u16 dst[5000];
int count = toUtf16((const u8*)str, len, dst, 5000);
bool first = true;
int n=0;
while (n < count) {
if (!first) { printf(","); } else first = false;
printf("%i", dst[n]);
n++;
}
}
void exportConstants() {
StringID* p = gStrList;
while (p) {
if(p->m_isDumped) {
tab(); printf("/* %s */\n",p->m_str);
if(strcmp(p->m_str, "") != 0) {
tab(); printf("static const uniChar _$_cteStr%i[] = {",p->m_id); dumpUtf8ToUniChar(p->m_str); printf("};\n");
}
else {
// String is initialised with String::Empty
}
tab(); printf("static System::String* _$_cteStr%iObj;\n\n", p->m_id);
}
p = p->m_next;
}
dumpGlobalInitializerPrototype();
}
void exportInlineFiles(const char* outputPath, ClassDictionary* CD) {
// Export class prototypes
freopen(concat2(outputPath, "classPrototypes.inl"), "w", stdout);
exportNameSpaceHeader(gRootNameSpace, true);
// Export __InternalUtils::GetTypeID specializations
freopen(concat2(outputPath, "__InternalUtilsGetTypeID_specializations.inl"), "w", stdout);
const char* templateList = "template<> struct __InternalUtilsGetTypeID<<T>> { ";
const char* bodyCsteList = "static u32 getIt() { return _TYPE_USEROBJECT | <BODY>; }";
const char* templateEndList = " };";
templateClassSpecializationDumpForOneGenericType(&templateList, &bodyCsteList, &templateEndList, 1,
CD->classes, CD->IDs, CD->count);
}
void exportStatics(NameSpace* nSpace, const char* precNameSpace) {
char prefix[1000];
if (precNameSpace[0] != 0) {
sprintf(prefix,"%s%s::",precNameSpace, nSpace->getName());
} else {
if (nSpace->getName()[0]) {
sprintf(prefix,"%s::", nSpace->getName());
} else {
sprintf(prefix,"");
}
}
NameSpace* pCurrSpace = nSpace;
// Export all static
AbstractContainer** pCnt = pCurrSpace->m_pInner;
if (pCurrSpace->m_innerCount && (pCurrSpace->m_noDump == false)) {
for (int n=0; n < pCurrSpace->m_innerCount; n++) {
AbstractContainer* pAC = pCnt[n];
gCurrentAC = pAC;
for (int n=0; n < pAC->m_memberCount; n++) {
Variable* pVar = pAC->m_members[n];
if ((pVar->m_modifier & ATT_STATIC) != 0) {
if (pVar->m_expression) {
Expression::patchExpressionsForListExpressions(&pVar->m_expression, pVar->m_type);
pVar->m_expression->AnalysisAndTransform();
}
if (prefix[0]) {
printf("%s %s%s::%s;\n", pVar->m_type->dumpTypeForCode(NULL), prefix, pAC->getName(), pVar->getName());
} else {
printf("%s %s::%s;\n",pVar->m_type->dumpTypeForCode(NULL), pAC->getName(), pVar->getName());
}
// Analysis of expression for dependancy.
gCurrVar = pVar;
pVar->markSetupDependancy();
}
}
gCurrentAC = NULL;
exportStatics(pAC, prefix);
}
}
// Export inner name space first
NameSpace* p = pCurrSpace->m_pChildSpace;
while (p) { exportStatics(p,prefix); p = p->m_pNextSpace; }
}
void initStaticVar(Variable* pVar) {
printf(" = ");
if (pVar->m_expression) {
gStaticContextAC = pVar->m_ownerClass;
// Expression::analysisTransformAndDump(&pVar->m_expression, pVar->m_type);
pVar->m_expression->dumpExpression();
gStaticContextAC = NULL;
} else {
if (pVar->m_type->isGC_Able()) {
printf("NULL");
} else {
switch (pVar->m_type->m_typeID) {
case TYPE_SBYTE :
case TYPE_BYTE :
case TYPE_SHORT :
case TYPE_USHORT :
case TYPE_INT :
case TYPE_UINT :
case TYPE_LONG :
case TYPE_ULONG :
printf("0");
break;
case TYPE_CHAR :
printf("0");
break;
case TYPE_FLOAT :
printf("0.0f");
break;
case TYPE_DOUBLE :
printf("0.0");
break;
case TYPE_BOOL :
printf("false");
break;
case TYPE_INTPTR :
printf("NULL");
break;
default:
if (pVar->m_type->m_genreID == EGENRE::_ENUM) {
printf("(%s)0",pVar->m_type->getFullName(NULL));
} else {
compilerError(ERR_INTERNAL,"Error default GC type", pVar->m_line);
}
}
}
}
printf(";\n");
}
Variable* structNest[50]; // More than enough.
void setStaticsVarRec(int nestCount, Variable* pVar) {
AbstractContainer* pCls = pVar->m_ownerClass;
//
// Dump
//
SRSymbol v = pVar->m_type->getResolvedType(pCls);
AbstractContainer* cnt = (AbstractContainer*)v.pSymbol;
if (v.symbolType == EGENRE::_ABSTRACTCONTAINER && ((cnt)->m_modifier & ATT_STRUCT)) {
for (int n=0; n < cnt->m_memberCount; n++) {
Variable* pVarL = cnt->m_members[n];
structNest[nestCount] = pVarL;
setStaticsVarRec(nestCount+1, pVarL);
}
} else {
const char* pSrc = structNest[0]->m_ownerClass->getFullName(NULL); // From root
tab(); printf("%s::%s", pSrc, structNest[0]->m_name);
for (int m=1; m < nestCount; m++) {
printf(".%s", structNest[m]->m_name);
}
initStaticVar(structNest[nestCount-1]);
}
}
void setStatics() {
Variable* pVar;
//
// This system allow to solve dependancy between static / const C# expression and dump them in correct other.
//
while (pVar = gStaticDepMatrix->popIndependantVariable()) {
structNest[0] = pVar;
setStaticsVarRec(1, pVar);
}
}
void registerStaticsRec(int nestCount, char* prefix, AbstractContainer* pAC, Variable* v) {
AbstractContainer* localContainer;
if (v) {
localContainer = v->m_type->m_definitionAC;
} else {
localContainer = pAC;
}
//
// For nextCount >= 1 : Struct inheritance is not supported, just parse sub structures.
//
for (int n=0; n < localContainer->m_memberCount; n++) {
Variable* pVar = localContainer->m_members[n];
// First level variable are static,
// But deeper level are inside a struct and do NOT depend on static flag !
if ((((pVar->m_modifier & ATT_STATIC) != 0) && nestCount == 0) || (nestCount)) {
if (pVar->m_type->isGC_Able()) {
structNest[nestCount] = pVar;
tab(); printf("System::Memory::registerGCRoot(&%s%s::",prefix, pAC->getName());
for (int m=0; m <= nestCount; m++) {
if (m != 0) {
printf(".");
}
printf("%s", structNest[m]->m_name);
}
printf(");\n");
} else if (pVar->m_type->m_definitionAC && pVar->m_type->m_definitionAC->m_modifier & ATT_STRUCT) {
structNest[nestCount] = pVar;
registerStaticsRec(nestCount + 1, prefix, pAC, pVar);
}
}
}
}
void registerStatics(NameSpace* nSpace, const char* precNameSpace) {
if(nSpace->m_noDump) {
// Do not register the static members.
return;
}
char prefix[1000];
int strl = strlen(precNameSpace);
if (strl) {
sprintf(prefix,"%s%s::",precNameSpace,nSpace->getName());
} else if(strlen(nSpace->getName())){
sprintf(prefix,"%s::",nSpace->getName());
}
else {
sprintf(prefix,"");
}
NameSpace* pCurrSpace = nSpace;
// Export all static
AbstractContainer** pCnt = pCurrSpace->m_pInner;
if (pCurrSpace->m_innerCount) {
for (int n=0; n < pCurrSpace->m_innerCount; n++) {
AbstractContainer* pAC = pCnt[n];
registerStaticsRec(0, prefix,pAC,NULL);
registerStatics(pAC,prefix);
}
}
// Export inner name space first
NameSpace* p = pCurrSpace->m_pChildSpace;
while (p) { registerStatics(p,prefix); p = p->m_pNextSpace; }
}
void registerGCWorld(NameSpace* root, u32 compilerOptions) {
bool isFramework = (compilerOptions & COMPIL_IS_FRAMEWORK) != 0;
// Declate all static variables.
exportStatics(root,"");
dumpGlobalInitializerImplementation();
printf(isFramework ? "\n#include \"callbackDef.inl\"\n\nvoid initFrameworkStatic() {\n" : "\nvoid initAllStatic() {\n");
depth++;
setStatics();
depth--;
printf("}\n\n");
printf(isFramework ? "void initFramework() {\n" : "void registerWorldGC() {\n");
depth++;
if(compilerOptions & COMPIL_USE_FRAMEWORK) {
tab(); printf("initFramework();\n");
}
StringID* p = gStrList;
bool first = true;
while (p) {
if(p->m_isDumped) {
if (first) {
first = false;
tab(); printf("// Register Strings into the GC.\n");
}
if(strcmp(p->m_str, "") != 0) {
tab(); printf("_$_cteStr%iObj = CS_NEW System::String(_$_cteStr%i,sizeof(_$_cteStr%i) / sizeof(uniChar));\n",p->m_id,p->m_id,p->m_id);
tab(); printf("System::Memory::registerGCRoot(&_$_cteStr%iObj);\n\n",p->m_id);
}
else {
tab(); printf("System::__GCObject::_RefSetValue((System::__GCObject**)&_$_cteStr%iObj, System::String::Empty);\n",p->m_id);
// String::Empty is registered somewhere else
}
}
p = p->m_next;
}
printf("\n");
tab();
if(isFramework) {
printf("initFrameworkStatic();\n");
tab(); printf("initCallbacks();\n");
}
else {
printf("initAllStatic();\n");
}
printf("\n");
registerStatics(root,"");
printf("\n");
depth--;
printf("}\n");
}
const char* dotToColon(const char* str) {
char buf[500];
char* pStr = (char*)str;
char* pBuf = buf;
while(*pStr) {
if(*pStr == '.') {
for(int n = 0 ; n < 2 ; n++, pBuf++) {
*pBuf = ':';
}
pStr++;
}
else {
*(pBuf++) = *(pStr++);
}
}
*pBuf = 0;
return concat(buf);
}
void dumpUsings(NameSpace* nSpace) {
for(int n=0; n < nSpace->m_usingCount ; n++) {
if(strcmp(nSpace->m_usings[n], "System.Runtime") != 0 &&
strcmp(nSpace->m_usings[n], "System.Runtime.InteropServices") != 0 &&
strcmp(nSpace->m_usings[n], "System.Text") != 0) {
bool isSupported = (nSpace->resolve(nSpace->m_usings[n]) != NULL);
if(isSupported) {
tab(); printf("using namespace %s;\n", dotToColon(nSpace->m_usings[n]));
}
}
else {
// Special case : those namespaces are used in C#, but must not be dumped in C++.
}
}
printf("\n");
}
void dumpEnums(NameSpace* nSpace) {
for (int n=0; n < nSpace->m_enumCount; n++) {
Enum* pEnum = nSpace->m_enums[n];
if(pEnum->getType()->m_typeID == TYPE_LONG || pEnum->getType()->m_typeID == TYPE_ULONG) {
compilerError(ERR_NOT_SUPPORTED_YET, "Only byte, sbyte, short, ushort, int and uint types can be used for enums", pEnum->m_line);
continue;
}
tab(); printf("enum %s {\n", pEnum->getName());
Enum::EnumEntry* pEntry = pEnum->m_list;
depth++;
while (pEntry) {
tab();printf(pEntry->m_name);
if (pEntry->m_expression) {
printf(" = ");
Expression::analysisTransformAndDump(&pEntry->m_expression, pEnum->getType());
}
printf(",\n");
pEntry = pEntry->m_pNext;
}
tab(); printf("_ForceWORD_%s = 0x7FFFFFFF\n", pEnum->m_name);
depth--;
tab(); printf("};\n\n");
}
}
void dumpDelegatePrototypes(NameSpace* nSpace) {
for(int n=0 ; n < nSpace->m_delegateCount ; n++) {
Delegate* pDelegate = nSpace->m_delegates[n];
gCurrentMethod = pDelegate;
tab(); printf("class _Delegate_Base_%s;\n",pDelegate->getName());
tab(); printf("template <class TClass> class _DelegateI_%s;\n",pDelegate->getName());
tab(); printf("class _DelegateS_%s;\n",pDelegate->getName());
}
gCurrentMethod = NULL;
}
void dumpClassPrototypes(NameSpace* nSpace, bool forExport) {
AbstractContainer** pCnt = nSpace->m_pInner;
for (int n=0; n < nSpace->m_innerCount; n++) {
AbstractContainer* currCnt = pCnt[n];
if (currCnt->m_noDump == false || forExport) {
tab(); currCnt->dumpTemplateLabel();
if(currCnt->m_modifier & ATT_STRUCT) {
printf("struct %s;\n", currCnt->getName());
}
else {
printf("class %s;\n", currCnt->getName());
}
}
}
printf("\n");
}
void recursiveRegisterClassDependancy(NameSpace* pCurrSpace) {
if (pCurrSpace->getGenre() == EGENRE::_NAMESPACE || pCurrSpace->getGenre() == EGENRE::_ABSTRACTCONTAINER) {
if(pCurrSpace->m_noDump) {
// No registration
return;
}
NameSpace* p = pCurrSpace->m_pChildSpace;
while (p) { recursiveRegisterClassDependancy(p); p = p->m_pNextSpace; }
AbstractContainer** pCnt = pCurrSpace->m_pInner;
for (int n=0; n < pCurrSpace->m_innerCount; n++) {
AbstractContainer* currCnt = pCnt[n];
if (pCurrSpace->getGenre() == EGENRE::_ABSTRACTCONTAINER) {
gStaticDepMatrix->createDependancy(currCnt, (AbstractContainer*)pCurrSpace);
}
if (!currCnt->m_noDump) {
gStaticDepMatrix->registerAbstractContainer(currCnt);
for (int m=0; m < currCnt->m_inheritancesCount; m++) {
TypeObject* type = currCnt->m_inheritances[m];
type->getResolvedType(pCurrSpace);
AbstractContainer* pDep = type->m_definitionAC;
if(!pDep->isSubSystem()) {
gStaticDepMatrix->createDependancy(currCnt, pDep);
}
}
for (int m=0; m < currCnt->m_accessorCount; m++) {
TypeObject* type = currCnt->m_accessors[m]->m_type;
SRSymbol sr = type->getResolvedType(currCnt);
switch (sr.symbolType) {
case EGENRE::_ABSTRACTCONTAINER:
{
AbstractContainer* pCnt = (AbstractContainer*)sr.pSymbol;
if (pCnt->m_modifier & ATT_STRUCT) {
gStaticDepMatrix->createDependancy(currCnt, pCnt);
}
}
break;
}
}
for (int m=0; m < currCnt->m_memberCount; m++) {
TypeObject* type = currCnt->m_members[m]->m_type;
SRSymbol sr = type->getResolvedType(currCnt);
switch (sr.symbolType) {
case EGENRE::_ABSTRACTCONTAINER:
{
AbstractContainer* pCnt = (AbstractContainer*)sr.pSymbol;
if (pCnt->m_modifier & ATT_STRUCT) {
gStaticDepMatrix->createDependancy(currCnt, pCnt);
}
}
break;
}
}
// TODO Struct in func call.
if(currCnt->m_innerCount) {
recursiveRegisterClassDependancy(currCnt);
}
}
}
}
}
void exportPrototypes() {
// 1. Register all classes with dependancies
recursiveRegisterClassDependancy(gRootNameSpace);
// 2. Dump each class based on dependancy
AbstractContainer* pCnt;
while (pCnt = gStaticDepMatrix->popIndependantAbstractContainer()) {
pCnt->dumpPrototype(false);
}
if(gStaticDepMatrix->hasRemainingAC()) {
compilerError(ERR_INTERNAL, "Dependant classes remaining");
}
}
void dumpDelegates(const char* prefix, NameSpace* nSpace) {
int count;
for (count = 0; count < nSpace->m_delegateCount; count++) {
gCurrentMethod = nSpace->m_delegates[count];
nSpace->m_delegates[count]->dumpDefinition(prefix);
}
gCurrentMethod = NULL;
}
void exportRuntimeIncludes() {
printf("#include \"RuntimeLibrary/CS_Array.h\"\n");
printf("#include \"RuntimeLibrary/CS_Console.h\"\n");
printf("#include \"RuntimeLibrary/CS_Marshal.h\"\n");
printf("#include \"RuntimeLibrary/CS_Memory.h\"\n");
printf("#include \"RuntimeLibrary/CS_Object.h\"\n");
printf("#include \"RuntimeLibrary/CS_String.h\"\n");
printf("#include \"RuntimeLibrary/CS_System.h\"\n");
printf("#include \"RuntimeLibrary/Collections/Collections.h\"\n");
printf("#include \"RuntimeLibrary/Collections/Generic/CS_Dictionary.h\"\n");
printf("#include \"RuntimeLibrary/Collections/Generic/CS_List.h\"\n");
printf("#include \"RuntimeLibrary/Collections/Generic/Generic.h\"\n");
printf("#include \"RuntimeLibrary/InternalUtils.h\"\n");
printf("#include \"RuntimeLibrary/MarshallingUtils.h\"\n");
}
void exportFrameworkHeader(){
printf("#ifndef _FRAMEWORK_H\n");
printf("#define _FRAMEWORK_H\n\n");
exportRuntimeIncludes();
printf("#include \"ExportListC_Likefunction.h\"\n");
printf("\n");
}
void exportFrameworkFooter(){
printf("\nvoid initFramework();\n\n");
printf("class Program : public System::Object {\n");
depth++;
printf("public:\n");
tab(); printf("void _ctor_Program();\n\n");
tab(); printf("Program();\n");
tab(); printf("static void start();\n");
tab(); printf("virtual u32 _processGC();\n");
tab(); printf("virtual void _releaseGC();\n");
tab(); printf("virtual bool _isInstanceOf(u32 typeID);\n");
tab(); printf("virtual inline void _moveAlert(u32 offset);\n");
printf("private:\n");
tab(); printf("static const u32 _TYPEID = 0xFFFFFFFF;\n");
depth--;
printf("};\n\n");
printf("\n#endif // _FRAMEWORK_H\n\n");
}
void exportNameSpaceHeader(NameSpace* nSpace, bool forExport) {
NameSpace* pCurrSpace = nSpace;
bool hasNameSpace = strlen(pCurrSpace->getName()) != 0;
bool isDumped = (pCurrSpace->m_noDump == false) || (forExport && !nSpace->isSubSystem());
if (hasNameSpace && isDumped) { tab(); printf("namespace %s {\n", pCurrSpace->getName()); depth++; }
if(isDumped) {
//dumpUsings(nSpace);
if(!forExport) {
dumpEnums(nSpace);
}
dumpDelegatePrototypes(nSpace);
dumpClassPrototypes(nSpace, forExport);
}
// Export inner name space first
NameSpace* p = pCurrSpace->m_pChildSpace;
while (p) { exportNameSpaceHeader(p, forExport); p = p->m_pNextSpace; }
if (hasNameSpace && isDumped) { depth--; tab(); printf("}\n"); }
}
void exportNameSpaceImplementation(NameSpace* nSpace) {
#ifdef __FULLNAMES__
bool dumpName = false;
#else
bool dumpName = true;
#endif
NameSpace* pCurrSpace = nSpace;
bool hasNameSpace = strlen(pCurrSpace->getName()) != 0;
bool isDumped = (pCurrSpace->m_noDump == false);
if(isDumped) {
if (hasNameSpace && dumpName) { tab(); printf("namespace %s {\n", pCurrSpace->getName()); depth++; }
// Export inner name space first
NameSpace* p = pCurrSpace->m_pChildSpace;
while (p) { exportNameSpaceImplementation(p); p = p->m_pNextSpace; }
//dumpUsings(nSpace);
if (pCurrSpace->m_delegateCount) {
tab(); printf("//\n");
tab(); printf("// Delegate Implementation\n");
tab(); printf("//\n\n");
dumpDelegates(dumpName ? "" : nSpace->getFullName(gRootNameSpace), nSpace);
}
if (pCurrSpace->m_innerCount) {
tab(); printf("//\n");
tab(); printf("// Class/Struct Implementation\n");
tab(); printf("//\n\n");
}
AbstractContainer** pCnt = pCurrSpace->m_pInner;
for (int n=0; n < pCurrSpace->m_innerCount; n++) {
if (!pCnt[n]->m_noDump) {
tab(); printf("//=============================\n");
tab(); printf("// Implementation of '%s'\n",pCnt[n]->getName());
tab(); printf("//=============================\n\n");
gCurrentAC = pCnt[n];
pCnt[n]->dumpImplementation(dumpName ? "" : nSpace->getFullName(gRootNameSpace)); // Classes relative to current namespace.
gCurrentAC = NULL;
printf("\n");
}
}
// Phase 2 : Dump implementation.
if (hasNameSpace && dumpName) { depth--; tab(); printf("}\n"); }
}
}
void processDelegateAssignment(Expression*& expression,TypeObject* typeOfDelegate, bool assignDelegate) {
loop:
// Second resolve right side
expression->AnalysisAndTransform();
if(expression->m_expressionType == EXPR_CAST) {
expression->m_item = expression->m_expressions[expression->m_expressionCount - 1]->m_item;
}
// Third check right side
if (assignDelegate) {
if (expression->m_item.symbolType == EGENRE::_DELEGATE) {
// Do nothing, delegate operator created the delegate.
} else if (expression->m_item.symbolType == EGENRE::_METHOD) {
// Forbid for now to assign directly function to delegate
// Later version of the compiler could generate the missing new automatically.
switch(expression->m_expressionType) {
case EXPR_IDENT :
case EXPR_DOT:
if(expression->m_expressionType == EXPR_DOT && expression->m_expressions[0]->m_runtimeType->isGC_Able() == false) {
compilerError(ERR_USER, "Delegate assignments can use methods from pointer types only", expression->m_line);
return;
}
// Modify expression tree and patch.
// Generate the new.
expression = CreateSingleExpr(EXPR_NEW, CreateMultipleExpr(expression))->setType(typeOfDelegate);
goto loop;
case EXPR_CAST:
if(expression->m_expressions[expression->m_expressionCount - 1]->isMethodAsDelegate()) {
processDelegateAssignment(expression->m_expressions[1], expression->m_runtimeType, assignDelegate);
expression->m_expressions[expression->m_expressionCount - 1]->m_hasParenthesis = true;
goto loop;
}
break;
default:
// Else call to a function returned a delegate.
break;
}
} else if ((expression->m_item.symbolType == EGENRE::_VARIABLE) || (expression->m_item.symbolType == EGENRE::_MEMBER)) {
// Do nothing
// Delegate a = v; // v is a variable or member.
} else if (expression->m_expressionType == EXPR_CTE) {
// Do nothing
// => Stick NULL.
} else {
if (expression->m_runtimeType->m_genreID == EGENRE::_DELEGATE) {
// Do nothing, new operator created the delegate.
} else {
compilerError(ERR_INTERNAL, "Delegate was not wrapped properly", expression->m_line);
}
}
}
}
Statement* Statement::wrapCaseBody() {
bool hasLocalVariable = false;
Statement* pInstruction = this;
while(pInstruction && !hasLocalVariable) {
if(pInstruction->m_statementType == STM_LOCALVAR) {
hasLocalVariable = true;
}
pInstruction = pInstruction->m_pNext;
}
if(hasLocalVariable) {
return CreateStatement(STM_BLOCK, NULL, this);
}
return this;
}
void Statement::analysis(bool processBrother) {
// Force to stop recursion, without test each
if (this == NULL) { return; }
Statement* p = m_pChild;
switch (m_statementType) {
case STM_UNDEFINED:
compilerError(ERR_INTERNAL, "Invalid Statement here", m_line);
break;
case STM_BLOCK:
gCurrentSD = gCurrentSD->addDictionary();
depth++;
p->analysis();
depth--;
gCurrentSD = gCurrentSD->removeDictionary();
break;
case STM_NILWRAPPER:
// Use by STM_FOR and act only as a "wrapper" to maintain order.
p->analysis();
break;
case STM_NULL:
break;
case STM_LABEL:
m_pChild->analysis();
break;
case STM_LOCAL_PERVAR:
if (m_expr) {
m_expr->AnalysisAndTransform();
}
break;
case STM_LOCALVAR:
{
// Forbid variable usage as long as not assigned.
Variable* pVar = this->m_vars;
while (pVar) {
gCurrentSD->addVariable(pVar);
pVar->m_ignoreDelegate = true;
pVar = pVar->m_pNextVariable;
}
Statement* pCaseCode = p->m_pChild;
while (p) {
// Copy the flag here.
p->m_bConstant = m_bConstant;
p->analysis(false);
p = p->m_pNext;
}
// Allow variable usage.
pVar = this->m_vars;
while (pVar) {
pVar->m_ignoreDelegate = false;
pVar = pVar->m_pNextVariable;
}
}
break;
case STM_WRAP_EXP: m_expr->AnalysisAndTransform(); break;
case STM_ASSIGN_EXPR: m_expr->AnalysisAndTransform(); break;
case STM_WRAPPER_POSTINCR: m_expr->AnalysisAndTransform(); break;
case STM_WRAPPER_POSTDECR: m_expr->AnalysisAndTransform(); break;
case STM_WRAPPER_PREINCR: m_expr->AnalysisAndTransform(); break;
case STM_WRAPPER_PREDECR: m_expr->AnalysisAndTransform(); break;
case STM_IF:
{
m_expr->AnalysisAndTransform();
// If code
p->analysis(false);
// else code
p = p->m_pNext;
if (p) {
p->analysis(false);
}
}
break;
case STM_SWITCH:
m_expr->AnalysisAndTransform();
if(m_expr->m_runtimeType->m_typeID == TYPE_STRING) {
compilerError(ERR_NOT_SUPPORTED_YET, "Switch statements with strings are not supported at the moment", m_line);
}
{
int count = 0;
Statement* pCaseCode = p->m_pChild;
while (p) {
//
// Dump Case inner code WHEN case list is completed.
//
if (pCaseCode != p->m_pChild) {
pCaseCode->analysis(true);
pCaseCode = p->m_pChild;
}
if (p->m_statementType == STM_CASE) {
p->m_counter = count++;
p->m_expr->AnalysisAndTransform();
}
p = p->m_pNext;
}
// Code for last case list block.
depth++;
pCaseCode->analysis(true);
depth--;
// Second loop to get the label number of the expressions referenced in the gotocases.
p = m_pChild; // Pointer roaming the cases of the switch
while(p) {
gCurrentSD = gCurrentSD->addDictionary();
Statement* pInstruction = p->m_pChild; // Pointer roaming the instructions of the case
if(pInstruction && pInstruction->m_statementType != STM_BLOCK) {
// Wrap case instruction into a block to be compatible with C++ if it contains local variables
p->m_pChild = pInstruction->wrapCaseBody();
}
while(pInstruction) {
if (pInstruction->m_statementType == STM_GOTOCASE) {
pInstruction->m_expr->AnalysisAndTransform();
// Fetch the corresponding case
Statement* pCase = m_pChild;
bool matched = false;
while(pCase && !matched) {
if(pInstruction->m_expr->m_expressionType == EXPR_CTE) { // Constant --> compare values
matched = pCase->m_expr->compareValues(pInstruction->m_expr);
}
else { // Enum --> compare texts
matched = (strcmp(pCase->m_expr->m_text, pInstruction->m_expr->m_text) == 0);
}
if(!matched) {
pCase = pCase->m_pNext;
}
}
if(matched) {
pInstruction->m_counter = pCase->m_counter;
}
else {
compilerError(ERR_USER, "Case not found", pInstruction->m_line);
}
}
pInstruction = pInstruction->m_pNext;
}
gCurrentSD = gCurrentSD->removeDictionary();
p = p->m_pNext;
}
}
break;
case STM_GOTOCASE:
m_expr->AnalysisAndTransform();
break;
case STM_GOTODEFAULT:
break;
case STM_CASE:
// Nothing to do --> See Switch implementation.
break;
case STM_CASEDEFAULT:
// Nothing to do --> See Switch implementation.
break;
case STM_UNSAFE:
{
bool unsafe = g_unsafe;
g_unsafe = true;
m_pChild->analysis();
g_unsafe = unsafe;
}
break;
case STM_WHILE:
this->m_expr->AnalysisAndTransform();
this->m_pChild->analysis();
break;
case STM_DOWHILE:
this->m_pChild->analysis();
this->m_expr->AnalysisAndTransform();
break;
case STM_FOR:
// Expr : condition opt
{
gCurrentSD = gCurrentSD->addDictionary();
Statement* p = m_pChild;
p->analysis(false);
this->m_expr->AnalysisAndTransform();
p = p->m_pNext;
p->analysis(false);
p = p->m_pNext;
p->analysis(false);
gCurrentSD = gCurrentSD->removeDictionary();
}
break;
case STM_FOREACH:
break;
case STM_BREAK:
break;
case STM_CONTINUE:
break;
case STM_GOTO:
break;
case STM_RETURN:
{
TypeObject* typeOfDelegate = NULL;
bool assignDelegate = false;
if (m_expr) {
m_expr->AnalysisAndTransform();
if ((m_expr->m_item.symbolType == EGENRE::_METHOD) && (m_expr->m_expressionType != EXPR_INVOKE)) {
assignDelegate = true;
typeOfDelegate = gReturnType;
processDelegateAssignment(m_expr,typeOfDelegate, assignDelegate);
}
}
}
break;
case STM_THROW:
if (m_expr) {
m_expr->AnalysisAndTransform();
}
break;
case STM_TRY:
// First child is code
depth++;
p->analysis();
depth--;
// Parse the list of CATCH / FINALLY
{
Statement* p2 = m_pNext;
bool firstCatch = true;
while (p2 && (p2->m_statementType == STM_CATCH || p2->m_statementType == STM_FINALLY)) {
depth++;
gCurrentSD = gCurrentSD->addDictionary();
if(p2->lbl) {
p2->m_type->getResolvedType(gCurrentAC);
Variable* exception = CreateVarInstance(p2->lbl);
exception->m_type = p2->m_type;
gCurrentSD->addVariable(exception);
}
p2->m_pChild->analysis();
gCurrentSD = gCurrentSD->removeDictionary();
depth--;
p2 = p2->m_pNext;
}
}
break;
case STM_CATCH:
case STM_FINALLY:
//
// Do nothing, See STM_TRY
//
break;
case STM_CHECKED:
case STM_UNCHECKED:
// Unsupported, generate compiler error in parser for CHECKED, jump dump sub expression in C++
p->analysis();
break;
case STM_LOCK:
// Unsupported, generate compiler error in parser for LOCK.
break;
case STM_USING:
// Unsupported, generate compiler error in parser for USING as statement.
break;
default:
compilerError(ERR_INTERNAL, "Invalid Statement here", m_line);
break;
}
// Dump all brother
if (processBrother) {
m_pNext->analysis();
}
}
void Statement::dumpStatement(bool processBrother) {
// Force to stop recursion, without test each
if (this == NULL) { return; }
Statement* p = m_pChild;
switch (m_statementType) {
case STM_UNDEFINED:
compilerError(ERR_INTERNAL, "Invalid Statement here", m_line);
break;
case STM_BLOCK:
tab(); printf("{\n");
gCurrentSD = gCurrentSD->addDictionary();
depth++;
p->dumpStatement();
depth--;
gCurrentSD = gCurrentSD->removeDictionary();
tab();printf("}\n");
break;
case STM_NILWRAPPER:
// Use by STM_FOR and act only as a "wrapper" to maintain order.
p->dumpStatement();
break;
case STM_NULL:
if(!g_forArgument) {
printf(";\n");
}
break;
case STM_LABEL:
depth--;
tab(); printf("%s:\n", this->lbl);
depth++;
m_pChild->dumpStatement();
break;
case STM_LOCAL_PERVAR:
if(!g_forArgument) {
tab();
}
gCurrentSD->addVariable(m_vars);
if (this->m_bConstant) {
// Const var in C# -> static const var in C++ ?
printf("static const ");
}
printf(m_vars->m_type->dumpTypeForCode(gCurrentAC));
// No need to dump "var_name = " anymore, now as expression.
if (this->m_expr) {
printf(" ");
this->m_expr->dumpExpression();
} else {
printf(" %s",this->m_vars->getName());
}
if(!g_forArgument) {
printf(";\n");
}
else if(this->m_pNext) {
printf(", ");
}
break;
case STM_LOCALVAR:
{
Statement* pCaseCode = p->m_pChild;
while (p) {
p->dumpStatement(false);
p = p->m_pNext;
}
}
break;
case STM_WRAP_EXP: if(!g_forArgument) tab(); m_expr->dumpExpression(); if(!g_forArgument) printf(";\n"); else if(m_pNext) printf(", "); break;
case STM_ASSIGN_EXPR: if(!g_forArgument) tab(); dumpWrapper(m_expr, !g_unsafe); if(!g_forArgument) printf(";\n"); else if(m_pNext) printf(", "); break;
case STM_WRAPPER_POSTINCR: if(!g_forArgument) tab(); dumpWrapper(m_expr, !g_unsafe); if(!g_forArgument) printf(";\n"); else if(m_pNext) printf(", "); break;
case STM_WRAPPER_POSTDECR: if(!g_forArgument) tab(); dumpWrapper(m_expr, !g_unsafe); if(!g_forArgument) printf(";\n"); else if(m_pNext) printf(", "); break;
case STM_WRAPPER_PREINCR: if(!g_forArgument) tab(); dumpWrapper(m_expr, !g_unsafe); if(!g_forArgument) printf(";\n"); else if(m_pNext) printf(", "); break;
case STM_WRAPPER_PREDECR: if(!g_forArgument) tab(); dumpWrapper(m_expr, !g_unsafe); if(!g_forArgument) printf(";\n"); else if(m_pNext) printf(", "); break;
case STM_IF:
{
tab(); printf("if ("); m_expr->dumpExpression(); printf(")\n");
// If code
p->dumpStatement(false);
// else code
p = p->m_pNext;
if (p) {
tab(); printf("else\n");
p->dumpStatement(false);
}
}
break;
case STM_SWITCH:
// TODO SWITCH : Check data type --> Switch in C++ are only using int.
// ==> Perform a conversion of all cases ? -> If / elseIf tree ? => Better than generate an error and complain.
// Note : If a class as a conversion operator to a int/string, then it become possible.
// this->m_expr->solveExpressionType();
gSwitchCount++;
tab(); printf("switch ("); m_expr->dumpExpression(); printf(") {\n");
{
Statement* pCaseCode = p->m_pChild;
while (p) {
//
// Dump Case inner code WHEN case list is completed.
//
if (pCaseCode != p->m_pChild) {
depth++;
pCaseCode->dumpStatement(true);
pCaseCode = p->m_pChild;
depth--;
}
if (p->m_statementType == STM_CASE) {
tab(); printf("case "); p->m_expr->dumpExpression(); printf(": sw_$lbl_%i_%i",gSwitchCount, p->m_counter); printf(":\n");
} else
if (p->m_statementType == STM_CASEDEFAULT) {
tab(); printf("default : sw_$lbl_%i_default:\n",gSwitchCount);
}
p = p->m_pNext;
}
// Code for last case list block.
depth++;
pCaseCode->dumpStatement(true);
depth--;
}
tab(); printf("}\n");
break;
case STM_GOTOCASE:
tab(); printf("goto sw_$lbl_%i_%i;\n",gSwitchCount,m_counter);
break;
case STM_GOTODEFAULT:
tab(); printf("goto sw_$lbl_%i_default;\n",gSwitchCount);
break;
case STM_CASE:
// Nothing to do --> See Switch implementation.
break;
case STM_CASEDEFAULT:
// Nothing to do --> See Switch implementation.
break;
case STM_UNSAFE:
{
bool unsafe = g_unsafe;
g_unsafe = true;
m_pChild->dumpStatement();
g_unsafe = unsafe;
}
break;
case STM_WHILE:
tab(); printf("while (");
this->m_expr->dumpExpression(); printf(")");
if(this->m_pChild->m_statementType != STM_NULL) {
printf("\n");
}
if(this->m_pChild->m_statementType != STM_BLOCK && this->m_pChild->m_statementType != STM_NULL) {
depth--;
tab();
depth++;
}
this->m_pChild->dumpStatement();
break;
case STM_DOWHILE:
tab(); printf("do");
if(this->m_pChild->m_statementType != STM_NULL) {
printf("\n");
}
if(this->m_pChild->m_statementType != STM_BLOCK && this->m_pChild->m_statementType != STM_NULL) {
depth--;
tab();
depth++;
}
this->m_pChild->dumpStatement();
tab(); printf("while ("); this->m_expr->dumpExpression(); printf(");\n");
break;
case STM_FOR:
// Expr : condition opt
{
Statement* p = m_pChild;
// Init section
bool multipleInit = (p->m_pChild && p->m_pChild->m_pChild->m_pNext);
if(multipleInit) {
tab(); printf("{\n");
depth++;
p->dumpStatement(false);
tab(); printf("for (;");
g_forArgument = true;
}
else {
g_forArgument = true;
tab(); printf("for (");
p->dumpStatement(false); printf(";");
}
// Condition section
if(this->m_expr) {
this->m_expr->dumpExpression();
}
printf(";");
// Next Section
p = p->m_pNext;
p->dumpStatement(false);
printf(")");
if(p->m_pNext->m_pChild->m_statementType != STM_NULL) {
printf("\n");
}
// Code inside the for.
g_forArgument = false;
p = p->m_pNext;
if(p->m_pChild->m_statementType != STM_BLOCK && p->m_pChild->m_statementType != STM_NULL) {
depth--;
tab();
depth++;
}
p->dumpStatement(false);
if(multipleInit) {
depth--;
tab(); printf("}\n");
}
}
break;
case STM_FOREACH:
// TODO FOR EACH
break;
case STM_BREAK:
tab(); printf("break;\n"); // TO DO check. Is valid same as C++ ?
break;
case STM_CONTINUE:
tab(); printf("continue;\n"); // TO DO check.
break;
case STM_GOTO:
tab(); printf("goto %s;\n",this->lbl);
break;
case STM_RETURN:
tab(); printf("return "); if (m_expr) {
// printf("/*\n");
// m_expr->dumpTree();
// printf("*/\n");
m_expr->dumpExpression();
} printf(";\n");
break;
case STM_THROW:
if (m_expr) {
tab(); printf("THROW("); m_expr->dumpExpression(); printf(");\n");
} else {
// throw; -> use hidden variable.
tab(); printf("THROW(_$hiddenExcep);\n");
}
break;
case STM_TRY:
tab(); printf("TRY\n");
// First child is code
p->dumpStatement();
p = m_pNext;
tab(); printf("CTRY\n");
// "FIRSTCATCH(x)", "ELSECATCH(x)", "FINALLY"
// Parse the list of CATCH / FINALLY
{
bool firstCatch = true;
bool hasFinally = false;
while (p && (p->m_statementType == STM_TRY || p->m_statementType == STM_CATCH ||
p->m_statementType == STM_FINALLY)) {
if (p->m_statementType == STM_CATCH) {
if (firstCatch) {
firstCatch = false;
tab(); printf("FIRSTCATCH(");
} else {
tab(); printf("ELSECATCH(");
}
if (p->m_type) {
printf(p->m_type->getFullName(gCurrentAC)); printf(","); printf(p->lbl ? p->lbl : "_$hiddenExcep"); /*dumpTypeForCode(); // TODO : do not * the type*/
printf(")\n");
} else {
printf("System::Exception,_$hiddenExcep)\n");
}
} else { // Finally
hasFinally = true;
tab(); printf("FINALLY\n");
}
p->m_pChild->dumpStatement();
// Handle Type here to simplify structure and counting.
p = p->m_pNext;
}
if(!hasFinally) {
// Dump FINALLY anyway to close the CATCH statement.
tab(); printf("FINALLY\n");
}
}
tab(); printf("ETRY\n");
break;
case STM_CATCH:
case STM_FINALLY:
//
// Do nothing, See STM_TRY
//
break;
case STM_CHECKED:
case STM_UNCHECKED:
// Unsupported, generate compiler error in parser for CHECKED, jump dump sub expression in C++
p->dumpStatement();
break;
case STM_LOCK:
// Unsupported, generate compiler error in parser for LOCK.
break;
case STM_USING:
// Unsupported, generate compiler error in parser for USING as statement.
break;
default:
compilerError(ERR_INTERNAL, "Invalid Statement here", m_line);
break;
}
// Dump all brother
if (processBrother) {
m_pNext->dumpStatement();
}
}
void SRSymbol::dump(bool assign) {
switch (symbolType) {
case EGENRE::_VARIABLE:
printf(pSymbol->getName());
break;
case EGENRE::_MEMBER:
{
//
// If member is static or const, safe access.
//
Variable* pVar = (Variable*)this->pSymbol;
if (g_unsafe || (pVar->m_modifier & ATT_STATIC)) {
printf(pSymbol->getName());
} else {
// Convert into safe getter
printf("_g$%s()",pSymbol->getName());
}
}
break;
case EGENRE::_METHOD:
break;
case EGENRE::_ACCESSOR:
{
Accessor* pAcc = (Accessor*)this->pSymbol;
printf("_acc_g%s",pSymbol->m_name);
if (!(g_unsafe || (pAcc->m_modifier & ATT_STATIC))) { printf("$"); }
printf("()");
}
break;
case EGENRE::_DELEGATE:
break;
case EGENRE::_ENUM:
break;
case EGENRE::_ABSTRACTCONTAINER:
break;
case EGENRE::_NAMESPACE:
break;
default:
printf("###UNRESOLVED###");
break;
}
}
const char* getExpressionString(EnumExpressionType e) {
switch (e) {
case EXPR_LIST: return "EXPR_LIST";
case EXPR_THIS: return "EXPR_THIS";
case EXPR_TYPEOF: return "EXPR_TYPEOF"; // + Type
case EXPR_BASE: return "EXPR_BASE";
case EXPR_CTE: return "EXPR_CTE";
case EXPR_IDENT: return "EXPR_IDENT";
case EXPR_REF: return "EXPR_REF";
case EXPR_PLUSPLUS: return "EXPR_PLUSPLUS";
case EXPR_MINUSMINUS: return "EXPR_MINUSMINUS";
case EXPR_ARROW: return "EXPR_ARROW"; // + Id
case EXPR_NOT: return "EXPR_NOT"; // !
case EXPR_LNOT: return "EXPR_LNOT"; // ~
case EXPR_ADRESSOF: return "EXPR_ADRESSOF";
case EXPR_SIZEOF: return "EXPR_SIZEOF"; // + Type
case EXPR_PREINCR: return "EXPR_PREINCR";
case EXPR_PREDECR: return "EXPR_PREDECR";
case EXPR_UNARYPLUS: return "EXPR_UNARYPLUS";
case EXPR_UNARYMINUS: return "EXPR_UNARYMINUS";
case EXPR_UNARYMULT: return "EXPR_MULT";
case EXPR_IS: return "EXPR_IS";
case EXPR_AS: return "EXPR_AS";
case EXPR_UNCHECKED: return "EXPR_UNCHECKED";
case EXPR_CHECKED: return "EXPR_CHECKED";
case EXPR_ACCESS: return "EXPR_ACCESS"; // + Expr|Id
case EXPR_NEW: return "EXPR_NEW"; // + Type
case EXPR_DOT: return "EXPR_DOT";
case EXPR_INVOKE: return "EXPR_INVOKE";
case EXPR_CAST: return "EXPR_CAST";
case EXPR_CAST_PTR: return "EXPR_CAST_PTR";
case EXPR_MULT: return "EXPR_MULT";
case EXPR_DIV: return "EXPR_DIV";
case EXPR_MOD: return "EXPR_MOD";
case EXPR_PLUS: return "EXPR_PLUS";
case EXPR_MINUS: return "EXPR_MINUS";
case EXPR_LSHFT: return "EXPR_LSHFT";
case EXPR_RSHFT: return "EXPR_RSHFT";
case EXPR_LESS: return "EXPR_LESS";
case EXPR_MORE: return "EXPR_MORE";
case EXPR_LESSEQ: return "EXPR_LESSEQ";
case EXPR_MOREEQ: return "EXPR_MOREEQ";
case EXPR_EQUTST: return "EXPR_EQUTST";
case EXPR_DIFFTST: return "EXPR_DIFFTST";
case EXPR_LAND: return "EXPR_LAND";
case EXPR_LXOR: return "EXPR_LXOR";
case EXPR_LOR: return "EXPR_LOR";
case EXPR_AND: return "EXPR_AND";
case EXPR_OR: return "EXPR_OR";
case EXPR_XOR: return "EXPR_XOR";
case EXPR_ASS_EQ: return "EXPR_ASS_EQ";
case EXPR_ASS_PLUSEQ: return "EXPR_ASS_PLUSEQ";
case EXPR_ASS_MINUSEQ: return "EXPR_ASS_MINUSEQ";
case EXPR_ASS_STAREQ: return "EXPR_ASS_STAREQ";
case EXPR_ASS_DIVEQ: return "EXPR_ASS_DIVEQ";
case EXPR_ASS_MODEQ: return "EXPR_ASS_MODEQ";
case EXPR_ASS_XOREQ: return "EXPR_ASS_XOREQ";
case EXPR_ASS_ANDEQ: return "EXPR_ASS_ANDEQ";
case EXPR_ASS_OREQ: return "EXPR_ASS_OREQ";
case EXPR_ASS_RSHFTEQ: return "EXPR_ASS_RSHFTEQ";
case EXPR_ASS_LSHFTEQ: return "EXPR_ASS_LSHFTEQ";
case EXPR_COND: return "EXPR_COND";
default: return "UNKOWN EXPRESSION";
}
}
int dumpDepth = 0;
void Expression::dumpTree() {
for (int m=0; m < dumpDepth; m++) { printf(" "); }
printf(getExpressionString(this->m_expressionType));
if ((this->m_expressionType == EXPR_IDENT) || (this->m_expressionType == EXPR_INVOKE) || (this->m_expressionType == EXPR_DOT)) {
printf(" %s ", this->m_text);
}
printf("\n");
dumpDepth++;
for (int n=0; n < m_expressionCount; n++) {
if (m_expressions[n]) {
m_expressions[n]->dumpTree();
} else {
for (int m=0; m < dumpDepth; m++) { printf(" "); }
printf("(null)\n");
}
}
dumpDepth--;
}
SRSymbol Expression::resolveIteration(const char* text, SRSymbol input, TypeObject*& lastType, SRSymbol& item, u8 searchMask, Expression* methodSignature, Variable* delegateSignature, TypeGenericEntry* genParams) {
SRSymbol res;
/*
if(searchFunction) {
item = resolveSimpleSymbol(input,text,SEARCH_FUNCTION | SEARCH_INHERITANCE | SEARCH_HIERARCHY);
}
else {*/
item = resolveSimpleSymbol(input, text, searchMask, methodSignature, delegateSignature, genParams);
switch (item.symbolType) {
case EGENRE::_MEMBER:
{
// Get Member
Variable* pVar = (Variable*)item.pSymbol;
// Get Type of Member & Resolve relative to member owner.
res = pVar->m_type->getResolvedType(pVar->m_ownerClass);
// Copy type here.
lastType = pVar->m_type;
}
break;
case EGENRE::_VARIABLE:
{
// Get Local Variable
Variable* pVar = (Variable*)item.pSymbol;
// Get Type of Member & Resolve relative to this class.
// A method context is required as the type of the variable can be a local generic symbol.
res = pVar->m_type->getResolvedType(gCurrentAC, gCurrentMethod);
// Copy type here.
lastType = pVar->m_type;
}
break;
case EGENRE::_ACCESSOR:
{
Accessor* pAccessor = (Accessor*)item.pSymbol;
res = pAccessor->m_type->getResolvedType(pAccessor->m_ownerClass);
// Copy type
lastType = pAccessor->m_type;
}
break;
case EGENRE::_ABSTRACTCONTAINER:
{
AbstractContainer* pCnt = (AbstractContainer*)item.pSymbol;
lastType = pCnt->getType();
res = item;
}
break;
case EGENRE::_NAMESPACE:
{
res = item;
m_item = item;
lastType = NULL; // Expression should NEVER stop here.
}
break;
case EGENRE::_ENUM:
{
Enum* pEnum = (Enum*)item.pSymbol;
lastType = pEnum->getType();
res = item;
}
break;
case EGENRE::_ENUMENTRY:
{
Enum::EnumEntry* pEntry = (Enum::EnumEntry*)item.pSymbol;
lastType = pEntry->m_parent->getType();
res = item;
}
break;
case EGENRE::_DELEGATE:
{
Delegate* pDelegate = (Delegate*)item.pSymbol;
lastType = pDelegate->getType();
res = item;
}
break;
case EGENRE::_METHOD:
{
// Found a function.
Method* pM = (Method*)item.pSymbol; // Workd for delegate.
if(!pM->m_returnType) {
if(pM->m_modifier & ATT_CTOR) {
// Constructor
res = pM->m_pOwner->getType()->m_res;
pM->m_returnType = res.pType;
}
else {
compilerError(ERR_INTERNAL, concat2("No return type for the method ", pM->getName()), m_line);
}
}
else {
// Resolve return type.
res = pM->m_returnType->getResolvedType(pM->m_pOwner);
}
// Save type
lastType = pM->m_returnType;
}
break;
case EGENRE::_GENDEFENTRY:
// Nothing to do
break;
case EGENRE::_METHODLIST:
res = item;
break;
default:
compilerError(ERR_INTERNAL,"Error EXPR_IDENT not solved.", m_line);
}
return res;
}
void transformIn_This(Expression* expr) {
expr->m_expressionType = EXPR_DOT;
Expression* sub = CreateLeafExpr(EXPR_UNDER_THIS);
sub->m_runtimeType = gCurrentAC->getType();
expr->addExpression(sub);
}
void Expression::AnalysisAndTransform() {
if (this == NULL) { return; }
if (this->m_expressionType == EXPR_DOT) {
for(int n = 0 ; n < m_expressionCount ; n++) {
m_expressions[n]->m_isDotRoot = false;
}
}
if(this->m_expressionType != EXPR_INVOKE && this->m_delegateDef) {
// Pass on delegate signature
for(int n = 0 ; n < m_expressionCount ; n++) {
m_expressions[n]->m_delegateDef = m_delegateDef;
}
}
//
// Those specifically need to control the recursion.
//
switch (this->m_expressionType) {
case EXPR_INVOKE:
case EXPR_PLUS:
case EXPR_ASS_EQ:
case EXPR_DELEGATECREATE:
case EXPR_NEW:
case EXPR_CAST:
break;
default:
// Parse all sub expression
for (int n=0; n < this->m_expressionCount; n++) {
m_expressions[n]->AnalysisAndTransform();
}
break;
}
// . Transform indexer to get / set --> Really !? C++ not OK ?
switch (this->m_expressionType) {
// Multiple
case EXPR_LIST:
case EXPR_LIST_INIT:
break;
case EXPR_DELEGATECREATE:
{
if(this->m_item.symbolType == EGENRE::_DELEGATE) {
// The expression has already been analysed.
break;
}
Variable* pList = NULL;
Variable* pListStart = NULL;
if (!gIsStaticFunc) {
Variable* pNew = new Variable();
pNew->setType(gCurrentAC->getType());
pNew->setName("_this__");
this->m_anonymousClass->addMember(pNew);
pList = pNew;
pListStart = pList;
}
SymbolDictionary* pDic = gCurrentSD;
while (pDic) {
SymbolDictionary::VariableList* pVariable = pDic->m_list;
while (pVariable) {
if (pVariable->content) {
if (pVariable->content->m_ignoreDelegate == false) {
Variable* pNew = new Variable();
if (pList) {
pList->m_pNextVariable = pNew;
pList = pNew;
} else {
pList = pNew;
pListStart = pList;
}
pNew->setName(pVariable->content->getName());
pNew->setType(pVariable->content->m_type);
this->m_anonymousClass->addMember(pNew);
}
}
pVariable = pVariable->pNext;
}
pDic = pDic->m_parent;
}
// Create Ctor with all member.
Method* pMCtor = new Method();
pMCtor->setName(this->m_anonymousClass->getName());
pMCtor->m_modifier |= ATT_CTOR;
pMCtor->m_parameters = pListStart;
this->m_anonymousClass->addMethod(pMCtor);
// Create calling method.
Method* pM = new Method();
pM->setName("_delegate");
gTransformAsDelegate = true;
pM->m_codeBlock = this->m_delegateCode;
pM->m_parameters = this->m_delegateSignature;
AbstractContainer* currClass = gCurrentAC;
gCurrentAC = this->m_anonymousClass;
// Create global dico + Add function parameters to dictionnary.
if (gCurrentSD) {
gCurrentSD = gCurrentSD->addDictionary(); // Inside a function.
} else {
gCurrentSD = new SymbolDictionary(); // Member init.
}
Variable* pParameter = pM->m_parameters;
while(pParameter) {
// Register variable as local symbols for code.
gCurrentSD->addVariable(pParameter);
pParameter = pParameter->m_pNextVariable;
}
pM->m_codeBlock->analysis();
gCurrentAC = currClass;
gTransformAsDelegate = false;
// Destroy dico + Remove variable/parameters from dictionnary.
gCurrentSD = gCurrentSD->removeDictionary();
pM->m_parameters = this->m_delegateSignature;
// Get return type from recursion.
pM->m_returnType = this->m_delegateDef->m_returnType;
this->m_anonymousClass->addMethod(pM);
// Necessary for assignment operator test. (resolved like EXPR_DOT or EXPR_IDENT)
this->m_item.symbolType = EGENRE::_DELEGATE;
}
break;
// Leaf
case EXPR_UNDER_THIS:
// Do nothing.
break;
case EXPR_THIS:
// Return type DONE
this->m_runtimeType = gCurrentAC->getType();
if (!gTransformAsDelegate) {
// Do nothing.
} else {
//
// Morphed itself into _this__ ! Yeah ! => Delegate
//
this->m_expressionType = EXPR_UNDER_THIS;
}
break;
case EXPR_BASE:
{
TypeObject* pParent = gCurrentAC->getAncestor();
// Return type DONE
this->m_runtimeType = pParent ? pParent : &t_OBJECT;
}
break;
case EXPR_IDENT:
case EXPR_DOT:
{
if(m_delegateDef) {
AnalysisMethodForDelegate(this->m_genericCall);
}
else {
SRSymbol res;
u8 searchMask;
// Handle DOT or IDENT
if (m_expressionCount == 0 || m_expressions[0] == NULL) {
res.symbolType = EGENRE::_ABSTRACTCONTAINER;
res.pSymbol = gCurrentAC;
searchMask = SEARCH_ALL;
} else {
if(m_expressions[0]->m_runtimeType) {
// Class / Enum / Namespace could be possible.
res = m_expressions[0]->m_runtimeType->m_res;
}
else {
// Namespaces don't have a runtime type
res = m_expressions[0]->m_item;
}
searchMask = SEARCH_ALL & ~SEARCH_VARIABLE;
}
if(!m_isInvoked && !m_isDotRoot) {
// Can't be a method
searchMask &= ~SEARCH_FUNCTION;
}
res = resolveIteration(this->m_text, res, this->m_runtimeType,this->m_item, searchMask);
}
if (this->m_runtimeType && this->m_runtimeType->m_res.symbolType == EGENRE::_GENDEFENTRY && m_expressions[0]) {
// Substitute generic type
if(m_expressions[0]->m_runtimeType->m_res.symbolType == EGENRE::_ABSTRACTCONTAINER) {
AbstractContainer* pAC = (AbstractContainer*)m_expressions[0]->m_runtimeType->m_res.pSymbol;
TypeGenericDefinitionEntry* pGen = this->m_runtimeType->m_definitionGeneric;
this->m_runtimeType = pAC->getGenericType(pGen, m_expressions[0]->m_runtimeType->m_generic);
}
else {
compilerError(ERR_INTERNAL, "Template is not a class", m_expressions[0]->m_line);
}
}
if (gTransformAsDelegate) {
// Insert a "_this + ." !, transform into EXPR_DOT.
if (this->m_expressionType == EXPR_IDENT) {
switch (this->m_item.symbolType) {
case EGENRE::_MEMBER:
{
Variable* pVar = (Variable*)this->m_item.pSymbol;
if ((pVar->m_modifier & ATT_STATIC) == 0) {
transformIn_This(this);
}
}
break;
case EGENRE::_METHOD:
{
Method* pM = (Method*)this->m_item.pSymbol;
if ((pM->m_modifier & ATT_STATIC) == 0) {
transformIn_This(this);
}
}
break;
}
}
}
if (g_analysis_static) {
switch (this->m_item.symbolType) {
case EGENRE::_MEMBER:
{
Variable* pVar = (Variable*)this->m_item.pSymbol;
if (pVar->m_modifier & ATT_STATIC) {
gStaticDepMatrix->createDependancy(gCurrVar, pVar);
} else {
compilerError(ERR_INTERNAL,"Non static member used in static assignement, WTF.", m_line);
}
}
break;
case EGENRE::_ACCESSOR:
case EGENRE::_ABSTRACTCONTAINER:
case EGENRE::_NAMESPACE:
case EGENRE::_ENUM:
case EGENRE::_DELEGATE:
case EGENRE::_ENUMENTRY:
case EGENRE::_METHOD:
{
// No dependancy.
}
break;
default:
compilerError(ERR_INTERNAL,"Unprocessed case", m_line);
}
}
if(this->m_expressionCount > 0) {
if(this->m_expressions[0]->m_item.symbolType == EGENRE::_ABSTRACTCONTAINER
&& this->m_item.symbolType == EGENRE::_ABSTRACTCONTAINER) {
// This inner class will be unnested, so its container should not be dumped.
this->m_expressions[0]->m_bSkip = true;
}
}
}
break;
case EXPR_INVOKE:
{
//Analyze generic symbols
TypeGenericEntry* pGen = this->m_genericCall;
while(pGen) {
pGen->m_instanceType->getResolvedType(gCurrentAC, gCurrentMethod);
pGen->m_genericName = pGen->m_instanceType->dumpTypeForCode(gCurrentAC, gCurrentMethod);
pGen = pGen->m_pNext;
}
//
// Descending and solving sub systems.
//
m_expressions[1]->AnalysisAndTransform();
if(m_expressions[1]->isAmbiguous()) {
// TODO : try every combinaison
compilerError(ERR_NOT_SUPPORTED_YET, "Overloaded methods as method parameters are not supported yet", m_expressions[1]->m_line);
}
else {
m_expressions[0]->AnalysisInvokeMethod(m_expressions[1], m_genericCall);
}
if (m_expressions[0]->m_runtimeType->m_res.symbolType == EGENRE::_GENDEFENTRY) {
TypeGenericDefinitionEntry* pGen = m_expressions[0]->m_runtimeType->m_definitionGeneric;
Method* pMethod = (Method*)m_expressions[0]->m_item.pSymbol;
m_expressions[0]->m_runtimeType = pMethod->getGenericType(pGen, this->m_runtimeType->m_generic);
}
// Special case : method which returns a delegate
if (m_expressions[0]->m_item.symbolType == EGENRE::_METHOD && m_expressions[0]->m_runtimeType->m_genreID == EGENRE::_DELEGATE) {
switch(m_expressions[0]->m_expressionType)
{
case EXPR_IDENT :
case EXPR_DOT :
// Still a method at this level of the tree
this->m_runtimeType = m_expressions[0]->m_runtimeType;
this->m_item = m_expressions[0]->m_item;
break;
case EXPR_INVOKE : //getDelegate()() style
{
Delegate* pDelegate = m_expressions[0]->m_runtimeType->m_definitionDelegate;
SRSymbol symbol;
symbol.pSymbol = (Symbol*)pDelegate;
symbol.pType = m_expressions[0]->m_runtimeType;
symbol.symbolType = EGENRE::_DELEGATE;
this->m_runtimeType = m_expressions[0]->m_runtimeType;
this->m_item = symbol;
break;
}
default:
compilerError(ERR_INTERNAL,"The method is neither an identifier, an invoke nor a dot expression ?", m_expressions[0]->m_line);
break;
}
}
else if (m_expressions[0]->m_runtimeType == NULL) {
compilerError(ERR_INTERNAL, "Unresolved invoke symbol", m_expressions[0]->m_line);
SRSymbol notFound;
notFound.symbolType = EGENRE::_UNDEFGENRE;
notFound.pSymbol = createNotFoundSymbol();
m_item = notFound;
break;
}
else if (m_expressions[0]->m_runtimeType->m_genreID == EGENRE::_DELEGATE) {
Delegate* pDelegate = m_expressions[0]->m_runtimeType->m_definitionDelegate;
SRSymbol symbol;
symbol.pSymbol = (Symbol*)pDelegate;
symbol.pType = m_expressions[0]->m_runtimeType;
symbol.symbolType = EGENRE::_DELEGATE;
this->m_runtimeType = m_expressions[0]->m_runtimeType;
this->m_item = symbol;
}
else {
//
// Get the result of sub (EXPR_DOT) m_expressions[0].m_item.symbolType == EGENRE::_METHOD
//
if (m_expressions[0]->m_item.symbolType == EGENRE::_METHOD) {
this->m_runtimeType = m_expressions[0]->m_runtimeType;
this->m_item = m_expressions[0]->m_item;
Method* pMethod = (Method*)this->m_item.pSymbol;
pMethod->resolveDefaultParams();
} else {
compilerError(ERR_INTERNAL, "Invoke not on a method, and it does not return a delegate", m_expressions[0]->m_line);
}
}
if(m_expressions[1]) {
// Transform the function parameters into delegates
if(m_expressions[1]->m_expressionType == EXPR_LIST) {
for(int n = 0 ; n < m_expressions[1]->m_expressionCount ; n++)
{
Expression*& pParam = m_expressions[1]->m_expressions[n];
if(pParam->isMethodAsDelegate()) {
transformMethodAsDelegate(pParam, n);
}
else if(pParam->m_expressionType == EXPR_COND) {
for(int i = 1 ; i <= 2 ; i++) {
Expression*& subExpr = pParam->m_expressions[i];
if(subExpr->isMethodAsDelegate()) {
if(subExpr->m_expressionType == EXPR_IDENT || subExpr->m_expressionType == EXPR_DOT) {
compilerError(ERR_NOT_SUPPORTED_YET, "Please do not use the conditional operator with functions as a delegate-typed parameter", m_expressions[1]->m_line);
}
else {
transformMethodAsDelegate(subExpr, n);
}
}
}
}
}
}
else {
compilerError(ERR_INTERNAL, "Method parameters are supposed to be a list", m_expressions[1]->m_line);
}
}
//
// Return type DONE EXPR_INVOKE.
//
}
break;
// Double
case EXPR_ACCESS:
{
// Same as invoke.
//
// Descending and solving sub systems.
//
m_expressions[0]->AnalysisAndTransform();
m_expressions[1]->AnalysisAndTransform();
TypeObject* classType = m_expressions[0]->m_runtimeType;
// Solve which accessor need to be called.
Accessor* pAccessor = classType->m_definitionAC->findPropertyIndexer(m_expressions[1]);
pAccessor->m_type->getResolvedType(classType->m_definitionAC);
if(pAccessor->m_type->m_genreID == EGENRE::_GENDEFENTRY) {
if(classType->m_originalType) {
// Get the type of the array
this->m_runtimeType = classType->m_originalType;
}
else if(classType->m_generic) {
AbstractContainer* pAC = classType->m_definitionAC;
TypeGenericDefinitionEntry *pGen = pAccessor->m_type->m_definitionGeneric;
this->m_runtimeType = pAC->getGenericType(pGen, classType->m_generic);
}
else {
compilerError(ERR_INTERNAL, "The class uses a generic variable, but its instance has no generic parameter", m_expressions[0]->m_line);
}
}
else {
// Get the output type of the accessor.
this->m_runtimeType = pAccessor->m_type;
}
if(classType->m_originalType) {
// Local resolution context
NameSpace* contextNameSpace = NULL;
Method* contextMethod = NULL;
getContext(this->m_expressions[0]->m_item.pSymbol, contextNameSpace, contextMethod);
this->m_item = this->m_runtimeType->getResolvedType(contextNameSpace, contextMethod);
}
else {
this->m_item = this->m_runtimeType->getResolvedType(pAccessor->m_ownerClass);
}
}
break;
case EXPR_CTE:
switch (this->m_value.type) {
case TYPE_BOOL:
this->m_runtimeType = &t_BOOL;
break;
case TYPE_STRING:
this->m_runtimeType = &t_STRING;
break;
case TYPE_NULL:
this->m_runtimeType = &t_NULL;
break;
case TYPE_DOUBLE:
this->m_runtimeType = &t_DOUBLE;
break;
case TYPE_FLOAT:
this->m_runtimeType = &t_FLOAT;
break;
case TYPE_INT:
this->m_runtimeType = &t_INT;
break;
case TYPE_UINT:
this->m_runtimeType = &t_UINT;
break;
case TYPE_LONG:
this->m_runtimeType = &t_LONG;
break;
case TYPE_ULONG:
this->m_runtimeType = &t_ULONG;
break;
case TYPE_CHAR:
this->m_runtimeType = &t_CHAR;
break;
default:
compilerError(ERR_INTERNAL,"internal error dump expression CTE", m_line);
break;
}
// Return type DONE (for each case)
break;
case EXPR_NOT:
// Return type DONE
m_runtimeType = &t_BOOL;
break; // !
case EXPR_PLUSPLUS:
case EXPR_MINUSMINUS:
case EXPR_PREINCR:
case EXPR_PREDECR:
// Return type DONE (same type)
m_runtimeType = m_expressions[0]->m_runtimeType;
if(m_expressions[0]->m_expressionType != EXPR_ACCESS) {
m_expressions[0]->m_isAssignmentSide = true;
}
m_item = m_expressions[0]->m_item;
break;
case EXPR_LNOT:
case EXPR_UNARYPLUS:
case EXPR_UNARYMINUS:
// Return type DONE (same type)
m_runtimeType = m_expressions[0]->m_runtimeType;
break;
case EXPR_IS:
// Return type DONE (Override Type by result of IS)
this->m_typeParam->getResolvedType(gCurrentAC);
this->m_runtimeType = &t_BOOL;
break;
case EXPR_AS:
// Return type DONE
this->m_typeParam->getResolvedType(gCurrentAC);
this->m_runtimeType = this->m_typeParam;
break;
case EXPR_NEW:
// The parameter type is actually stored in m_runtimeType
this->m_typeParam = this->m_runtimeType;
this->m_typeParam->getResolvedType(gCurrentAC);
m_expressions[0]->AnalysisAndTransform();
if (m_expressionCount == 2) {
m_expressions[1]->AnalysisAndTransform();
bool hasInitializer = (m_expressions[1] != NULL);
if (hasInitializer) {
// Already done. m_expressions[1]->AnalysisAndTransform();
m_expressions[1]->m_initializerInfo->m_typeArray = this->m_typeParam;
}
} else {
if (this->m_typeParam->isGC_Able()) {
// Ok.
} else {
compilerError(ERR_NOT_SUPPORTED, "Impossible to use new with struct or basic type", m_line);
}
}
break; // + Type
// Double
case EXPR_CAST:
if (this->m_expressionCount == 2) {
// Look for a type only
SRSymbol context;
Expression* castTypeExpr = this->m_expressions[0];
if(castTypeExpr->m_expressionCount > 0) {
Expression* dotPrefix = castTypeExpr->m_expressions[0];
dotPrefix->AnalysisAndTransform();
context = dotPrefix->m_runtimeType ? dotPrefix->m_runtimeType->m_res : dotPrefix->m_item;
}
else {
context.pSymbol = gCurrentAC;
context.symbolType = EGENRE::_ABSTRACTCONTAINER;
}
u8 searchMask = SEARCH_TYPE | SEARCH_INHERITANCE | SEARCH_HIERARCHY; // Look for a type only.
castTypeExpr->m_item = resolveIteration(castTypeExpr->m_text, context, castTypeExpr->m_runtimeType, castTypeExpr->m_item, searchMask);
this->m_expressions[1]->AnalysisAndTransform();
this->m_expressions[0]->m_runtimeType->getResolvedType(gCurrentAC);
this->m_runtimeType = this->m_expressions[0]->m_runtimeType;
this->m_item = this->m_expressions[1]->m_item;
}
else {
m_expressions[0]->AnalysisAndTransform();
m_item = m_expressions[0]->m_item;
}
break;
case EXPR_PLUS:
// Return type DONE
{
m_expressions[0]->AnalysisAndTransform();
m_expressions[1]->AnalysisAndTransform();
bool left_IsString = (m_expressions[0]->m_runtimeType->m_typeID == TYPE_STRING);
bool rightIsString = (m_expressions[1]->m_runtimeType->m_typeID == TYPE_STRING);
bool left_IsAdd = (m_expressions[0]->m_expressionType == EXPR_PLUS);
bool rightIsAdd = (m_expressions[1]->m_expressionType == EXPR_PLUS);
if (left_IsString) {
if (!left_IsAdd) {
this->wrapStringStart = true;
} else {
if (rightIsString && rightIsAdd) {
// TODO STRING Rebalance tree.
}
}
if (m_expressions[1]->m_runtimeType->m_genreID == EGENRE::_ENUM) {
compilerError(ERR_NOT_SUPPORTED_YET, "Impossible to use Enum with String concatenation in C++ version.", m_line);
}
this->m_runtimeType = m_expressions[0]->m_runtimeType;
} else {
this->m_runtimeType = m_expressions[0]->m_runtimeType->getResolvedBlend(m_expressions[1]->m_runtimeType);
}
}
break;
case EXPR_MULT:
case EXPR_DIV:
case EXPR_MOD:
case EXPR_MINUS:
// Return type DONE
this->m_runtimeType = m_expressions[0]->m_runtimeType->getResolvedBlend(m_expressions[1]->m_runtimeType);
break;
case EXPR_LSHFT:
case EXPR_RSHFT:
// Just copy from left side
// Return type DONE
this->m_runtimeType = m_expressions[0]->m_runtimeType;
break;
case EXPR_LESS:
case EXPR_MORE:
case EXPR_LESSEQ:
case EXPR_MOREEQ:
case EXPR_EQUTST:
case EXPR_DIFFTST:
// Just copy from left side
// Return type DONE
this->m_runtimeType = &t_BOOL;
break;
case EXPR_LAND:
case EXPR_LXOR:
case EXPR_LOR:
// Operator
// Return type DONE
this->m_runtimeType = m_expressions[0]->m_runtimeType->getResolvedBlend(m_expressions[1]->m_runtimeType);
break;
case EXPR_AND:
case EXPR_OR:
// Return type DONE
this->m_runtimeType = &t_BOOL;
break;
// Double (Assignment)
case EXPR_ASS_EQ:
{
m_expressions[0]->m_isAssignmentSide = true;
bool assignDelegate = false;
m_expressions[0]->AnalysisAndTransform();
// After resolution.
m_item = m_expressions[0]->m_item;
this->m_runtimeType = m_expressions[0]->m_runtimeType;
if (m_expressions[0]->m_runtimeType->m_genreID == EGENRE::_DELEGATE) {
// FIRST, Pass delegate signature to sub expression on left.
m_expressions[1]->m_delegateDef = m_expressions[0]->m_runtimeType->m_definitionDelegate;
assignDelegate = true;
}
processDelegateAssignment(m_expressions[1], m_expressions[0]->m_runtimeType, assignDelegate);
Expression::patchExpressionsForListExpressions(&m_expressions[1],this->m_runtimeType);
m_expressions[1]->AnalysisAndTransform();
}
break;
case EXPR_ASS_PLUSEQ:
case EXPR_ASS_MINUSEQ:
case EXPR_ASS_STAREQ:
case EXPR_ASS_DIVEQ:
case EXPR_ASS_MODEQ:
case EXPR_ASS_XOREQ:
case EXPR_ASS_ANDEQ:
case EXPR_ASS_OREQ:
case EXPR_ASS_RSHFTEQ:
case EXPR_ASS_LSHFTEQ:
// Just copy from left side
// Return type DONE
this->m_runtimeType = m_expressions[0]->m_runtimeType;
if(m_expressions[0]->m_expressionType != EXPR_ACCESS) {
m_expressions[0]->m_isAssignmentSide = true;
}
m_item = m_expressions[0]->m_item;
break;
case EXPR_REF:
this->m_runtimeType = m_expressions[0]->m_runtimeType;
m_item = m_expressions[0]->m_item;
break;
// Triple
case EXPR_COND:
// Return type DONE
this->m_runtimeType = m_expressions[1]->m_runtimeType->getResolvedBlend(m_expressions[2]->m_runtimeType);
break;
case EXPR_UNARYMULT:
case EXPR_CAST_PTR:
case EXPR_UNCHECKED:
case EXPR_ADRESSOF:
case EXPR_ARROW:
case EXPR_SIZEOF:
case EXPR_TYPEOF:
case EXPR_CHECKED:
// Not Supported, error handled at parser level.
break;
default:
compilerError(ERR_INTERNAL, "Internal Error, unknown Expression Type", m_line);
}
if (this->m_expressionType != EXPR_PLUS) {
for (int n=0; n < this->m_expressionCount; n++) {
Expression* expr = m_expressions[n];
if (expr) {
if (expr->m_expressionType == EXPR_PLUS) {
bool left_IsString = (expr->m_expressions[0]->m_runtimeType->m_typeID == TYPE_STRING);
if (left_IsString) {
expr->wrapStringEnd = true;
}
}
}
}
}
}
void Expression::AnalysisMethodForDelegate(TypeGenericEntry* genParams) {
if(m_delegateDef) {
// Analyse the delegate signature
Variable* pParam = m_delegateDef->m_parameters;
while(pParam) {
pParam->m_type->getResolvedType(m_delegateDef->m_pOwner);
pParam = pParam->m_pNextVariable;
}
// Resolve the method parameters
if(this->m_expressionType == EXPR_LIST) {
for(int n = 0 ; n < m_expressionCount ; n++) {
m_expressions[n]->m_delegateDef = this->m_delegateDef;
m_expressions[n]->AnalysisMethodForDelegate(genParams);
}
}
else {
SRSymbol context;
if(this->m_expressionCount > 0) {
m_expressions[0]->AnalysisAndTransform();
context = m_expressions[0]->m_runtimeType->m_res;
}
else {
context.pSymbol = (AbstractContainer*)gCurrentAC;
context.symbolType = EGENRE::_ABSTRACTCONTAINER;
}
resolveIteration(this->m_text, context, this->m_runtimeType,this->m_item, SEARCH_ALL, NULL, m_delegateDef->m_parameters, genParams);
if(this->m_item.symbolType == EGENRE::_UNDEFGENRE) {
compilerError(ERR_INTERNAL, "Method not found", m_line);
}
}
}
else {
compilerError(ERR_INTERNAL, "No delegate definition", m_line);
}
}
void Expression::AnalysisInvokeMethod(Expression* signature, TypeGenericEntry* genParams) {
if(this == NULL) {
return;
}
if(!this->m_text) {
AnalysisAndTransform();
return;
}
SRSymbol context;
if(this->m_expressionCount > 0) {
m_expressions[0]->AnalysisAndTransform();
context = m_expressions[0]->m_runtimeType->m_res;
}
else {
context.pSymbol = (AbstractContainer*)gCurrentAC;
context.symbolType = EGENRE::_ABSTRACTCONTAINER;
}
resolveIteration(this->m_text, context, this->m_runtimeType,this->m_item, SEARCH_ALL, signature, NULL, genParams);
if(this->m_item.symbolType == EGENRE::_UNDEFGENRE) {
compilerError(ERR_INTERNAL, "Method not found", m_line);
}
}
// "this" needs to be the invocation expression.
void Expression::transformMethodAsDelegate(Expression*& methodParam, int paramRank) {
Method* callingMethod = (Method*)m_expressions[0]->m_item.pSymbol;
Variable* pMatchingParam = callingMethod->m_parameters;
for(int i = 0 ; i < paramRank ; i++) {
pMatchingParam = pMatchingParam->m_pNextVariable;
}
processDelegateAssignment(methodParam, pMatchingParam->m_type, true);
}
void dumpStringWrapper(Expression* expr) {
if(expr->m_expressionType == EXPR_ASS_EQ) {
// TODO : if str = a + b -> new else if str1 = str2 simple pointer copy => no CS_NEW
expr->m_expressions[0]->dumpExpressionInternal(); printf(" = CS_NEW System::String()->appendStr("); expr->m_expressions[1]->dumpExpressionInternal(); printf(")->appendClose()");
// TODO : Update reference counting
}
else if(expr->m_expressionType == EXPR_ASS_PLUSEQ) {
const char* wrapperFunction;
switch(expr->m_expressions[1]->m_runtimeType->m_typeID) {
case TYPE_STRING :
wrapperFunction = "_appendStr";
break;
case TYPE_CHAR :
wrapperFunction = "_appendC";
break;
case TYPE_LONG :
wrapperFunction = "_appendL";
break;
case TYPE_ULONG :
wrapperFunction = "_appendUL";
break;
case TYPE_INT :
wrapperFunction = "_appendI";
break;
case TYPE_UINT :
wrapperFunction = "_appendU";
break;
case TYPE_SHORT :
wrapperFunction = "_appendS";
break;
case TYPE_USHORT :
wrapperFunction = "_appendUS";
break;
case TYPE_SBYTE :
wrapperFunction = "_appendS8";
break;
case TYPE_BYTE :
wrapperFunction = "_appendU8";
break;
case TYPE_FLOAT :
wrapperFunction = "_appendF";
break;
case TYPE_DOUBLE :
wrapperFunction = "_appendD";
break;
case TYPE_BOOL :
wrapperFunction = "_appendB";
break;
default :
compilerError(ERR_INTERNAL, "String concatenation with an unknown type", expr->m_expressions[1]->m_line);
break;
}
expr->m_expressions[0]->m_isAssignmentSide = false;
expr->m_expressions[0]->dumpExpressionInternal();
printf(" = ");
expr->m_expressions[0]->dumpExpressionInternal();
Variable* pVar = (Variable*)expr->m_expressions[0];
if(pVar->m_modifier & ATT_STATIC) {
printf("::");
}
else {
printf("->");
}
printf(wrapperFunction); printf("("); expr->m_expressions[1]->dumpExpressionInternal(); printf(")->_appendClose()");
}
else {
compilerError(ERR_INTERNAL, "Only = and += operators should be wrapped for strings", expr->m_line);
}
}
void dumpWrapper(Expression* expr, bool safe) {
const char* preStd; // Pre
const char* postStd; // Post
const char* opt;
const char* safeS = safe ? "$" : "";
if(expr->m_runtimeType->m_typeID == TYPE_STRING && expr->m_expressionType == EXPR_ASS_PLUSEQ) {
// Specific string wrapping
compilerError(ERR_NOT_SUPPORTED_YET, "TODO : String wrapper", expr->m_line);
dumpStringWrapper(expr);
// Ignore the rest of the function
return;
}
if(expr->m_expressionType == EXPR_ASS_EQ && expr->m_expressions[0]->m_expressionType == EXPR_ACCESS) {
// Special wrapping for array[i] = value
expr->m_expressions[0]->dumpExpressionInternal();
expr->m_expressions[1]->dumpExpressionInternal();
printf(")");
// Early return
return;
}
bool testDiv = ((expr->m_runtimeType->m_typeID & (ET_BASETYPE | ET_NUMBER))==ET_BASETYPE);
bool forceWrapper = false;
preStd="";
switch (expr->m_expressionType) {
case EXPR_PLUSPLUS: opt = "postInc"; preStd=""; postStd="++";
break;
case EXPR_MINUSMINUS: opt = "postDec"; preStd=""; postStd="--";
break;
case EXPR_PREINCR: opt = "preInc"; preStd="++"; postStd="";
break;
case EXPR_PREDECR: opt = "preDec"; preStd="--"; postStd="";
break;
case EXPR_ASS_EQ: opt = ""; postStd=" = ";
break;
case EXPR_ASS_PLUSEQ: opt = "AddEq"; postStd=" += ";
break;
case EXPR_ASS_MINUSEQ: opt = "SubEq"; postStd=" -= ";
break;
case EXPR_ASS_STAREQ: opt = "MulEq"; postStd=" *= ";
break;
case EXPR_ASS_DIVEQ: opt = "DivEq"; postStd=" /= "; forceWrapper = testDiv; // Div 0 except
break;
case EXPR_ASS_MODEQ: opt = "ModEq"; postStd=" %%= "; forceWrapper = testDiv; // Div 0 except
break;
case EXPR_ASS_XOREQ: opt = "XorEq"; postStd=" ^= ";
break;
case EXPR_ASS_ANDEQ: opt = "AndEq"; postStd=" &= ";
break;
case EXPR_ASS_OREQ: opt = "OrEq"; postStd=" |= ";
break;
case EXPR_ASS_RSHFTEQ: opt = "RShiftEq"; postStd=" >>= ";
break;
case EXPR_ASS_LSHFTEQ: opt = "LShiftEq"; postStd=" <<= ";
break;
default:
compilerError(ERR_INTERNAL,"Unknown case", expr->m_line);
break;
}
/*
-> Accessor if safe mode -> call safe
if unsafe mode -> call unsafe
-> Member : if safe mode -> call safe
if unsafe mode -> generate C++ directly
-> Static member : no safe operator do += directly
-> Variable : always generate C++ directly
*/
const char* prefix = "";
const char* name = "";
bool isStatic = false;
bool useWrapper = false;
bool useRefWrapper = false;
AbstractContainer* structDef = NULL;
switch (expr->m_item.symbolType) {
case EGENRE::_ACCESSOR:
{
prefix = "_acc";
Accessor* pAcc = (Accessor*)expr->m_item.pSymbol;
if (pAcc->m_modifier & ATT_STATIC) {
isStatic = true;
}
name = pAcc->getName();
useWrapper = true;
}
break;
case EGENRE::_MEMBER:
{
prefix = "";
Variable* pVar = (Variable*)expr->m_item.pSymbol;
bool isEnum = (pVar->m_type->m_genreID == EGENRE::_ENUM);
bool isNonNum = ((pVar->m_type->m_typeID & (ET_BASETYPE | ET_NUMBER))==ET_BASETYPE);
bool isPtr = (pVar->m_type->isGC_Able());
EnumExpressionType EType = expr->m_expressionType;
bool isEnumSpecialWrapper = (isEnum && (EType == EXPR_PLUSPLUS || EType == EXPR_MINUSMINUS || EType == EXPR_PREINCR || EType == EXPR_PREDECR || EType == EXPR_ASS_PLUSEQ || EType == EXPR_ASS_MINUSEQ));
bool isNumSpecialWrapper = ((isNonNum == false && isPtr == false) && (EType == EXPR_ASS_MODEQ));
bool isSpecialWrapper = isEnumSpecialWrapper || isNumSpecialWrapper;
bool isStruct = (pVar->m_ownerClass->m_modifier & ATT_STRUCT) != 0;
useRefWrapper = (isPtr || isStruct) && (expr->m_expressionType == EXPR_ASS_EQ);
if (isStruct) {
structDef = pVar->m_ownerClass;
}
if (pVar->m_modifier & ATT_STATIC) {
isStatic = true;
if(isSpecialWrapper) {
// Wrap operators which only exist in C#
useWrapper = true;
}
} else {
useWrapper = (safe || isSpecialWrapper);
}
name = pVar->getName();
}
break;
case EGENRE::_VARIABLE:
// useWrapper = false
{
Variable* pVar = (Variable*)expr->m_item.pSymbol;
name = pVar->getName();
// If variable is int/long like -> Need to have a wrapper for divide and modulo for exception.
if (testDiv && ((expr->m_expressionType == EXPR_ASS_DIVEQ) || (expr->m_expressionType == EXPR_ASS_MODEQ))) {
if (expr->m_expressionType == EXPR_ASS_DIVEQ) {
printf("UtilDiv::_divBy(");
}
if (expr->m_expressionType == EXPR_ASS_MODEQ) {
printf("UtilDiv::_modBy(");
}
printf(name);
printf(",");
expr->m_expressions[1]->dumpExpressionInternal();
printf(")");
// Stop here.
return;
} else if (!testDiv && (expr->m_expressionType == EXPR_ASS_MODEQ)) {
// Wrap %= operator for float types
printf("UtilDiv::_modBy(");
printf(name);
printf(",");
expr->m_expressions[1]->dumpExpressionInternal();
printf(")");
// Stop here.
return;
} else if ((pVar->m_type->m_genreID == EGENRE::_ENUM) &&
(expr->m_expressionType == EXPR_PLUSPLUS || expr->m_expressionType == EXPR_MINUSMINUS || expr->m_expressionType == EXPR_PREINCR ||
expr->m_expressionType == EXPR_PREDECR || expr->m_expressionType == EXPR_ASS_PLUSEQ || expr->m_expressionType == EXPR_ASS_MINUSEQ)) {
// Wrap additive operator for enum type
const char* pStrType = pVar->m_type->getFullName(pVar->m_ownerClass);
switch(expr->m_expressionType) {
case EXPR_PLUSPLUS :
printf("(");printf(pStrType);printf(")(((s32&)");printf(name);printf(")++)");
break;
case EXPR_MINUSMINUS :
printf("(");printf(pStrType);printf(")(((s32&)");printf(name);printf(")--)");
break;
case EXPR_PREINCR :
printf("(");printf(pStrType);printf(")(++((s32&)");printf(name);printf("))");
break;
case EXPR_PREDECR :
printf("(");printf(pStrType);printf(")(--((s32&)");printf(name);printf("))");
break;
case EXPR_ASS_PLUSEQ :
printf(name);printf(" = (");printf(pStrType);printf(")((s32)");printf(name);printf(" + ");expr->m_expressions[1]->dumpExpressionInternal();printf(")");
break;
case EXPR_ASS_MINUSEQ :
printf(name);printf(" = (");printf(pStrType);printf(")((s32)");printf(name);printf(" - ");expr->m_expressions[1]->dumpExpressionInternal();printf(")");
break;
default :
compilerError(ERR_INTERNAL, "Only ++, --, += and -= operators should be wrapped for enum variables", expr->m_line);
break;
}
// Stop here.
return;
}
}
break;
case EGENRE::_METHOD:
// Generate an L-Value, normal operation.
// useWrapper = false
break;
case EGENRE::_ABSTRACTCONTAINER:
if(expr->m_expressions[0]->m_expressionType == EXPR_ACCESS) {
// identifier[index]++ syntax
break;
}
else {
compilerError(ERR_INTERNAL," Assignment operator on unknown type", expr->m_expressions[0]->m_line);
}
break;
default:
compilerError(ERR_INTERNAL," Assignment operator on unknown type", expr->m_line);
}
bool finalUseWrapper = useWrapper || forceWrapper || useRefWrapper;
if (finalUseWrapper) {
expr->m_expressions[0]->dumpExpressionInternal();
printf(prefix);
printf("_s");
printf(name);
if (useWrapper && !isStatic) { // use $ only when
printf(safeS);
}
printf(opt);
printf("(");
if (expr->m_expressionCount == 2) {
expr->m_expressions[1]->dumpExpressionInternal();
}
printf(")");
} else {
printf(preStd);
expr->m_expressions[0]->dumpExpressionInternal();
printf(name);
printf(postStd);
if (expr->m_expressionCount == 2) {
expr->m_expressions[1]->dumpExpressionInternal();
}
}
}
void writeMemberOrAccessor(u32 modifier, bool isAccessor, const char* name, bool hasPrevious, bool isAssign, bool isStruct) {
const char* prefix = isAccessor ? "_acc" : "";
bool isStatic = (modifier & ATT_STATIC);
if (hasPrevious) {
if (isStatic) {
printf("::");
} else {
if (!isStruct) {
printf("->");
} else {
printf(".");
}
}
}
if(!isAssign) {
if (g_unsafe == true || isStatic == true) {
if(isAccessor) {
printf("_acc_g%s()", name);
} else {
printf(name); // member name
}
if(g_unsafeEphemeral) { g_unsafe = false; g_unsafeEphemeral = false; }
} else {
printf(prefix);
printf("_g%s$()", name);
}
} else {
// We generate the last dump at the affectation level.
}
}
void Expression::dumpTokens(SRSymbol res, const char* id, bool hasPrevious) {
SRSymbol item = m_item;
//res = resolveIteration(id, res, this->m_runtimeType, item);
switch (item.symbolType) {
case EGENRE::_METHOD:
{
Method* pM = (Method*)item.pSymbol;
// EXPR_INVOKE
if (this->m_expressionCount == 2) {
if (hasPrevious) {
pM->preFunc();
}
pM->dumpCall(m_expressions[1], false, m_genericCall);
compilerError(ERR_INTERNAL, "The compiler is not supposed to stop here.", m_line);
} else {
if(this->m_isInvoked) {
if(!hasPrevious && pM->m_pOwner != gCurrentAC) {
printf("%s::", pM->m_pOwner->getFullName(gCurrentAC));
}
}
else {
// Method as a delegate
if(pM->m_pOwner == gCurrentAC) {
printf("&%s", pM->getName());
}
else {
printf("&%s::%s", pM->m_pOwner->getFullName(gCurrentAC), pM->getName());
}
}
}
}
break;
case EGENRE::_VARIABLE:
{
if (!m_isAssignmentSide) {
// Local variable
printf(id);
}
}
break;
case EGENRE::_MEMBER:
{
//
// ::member (CLASS Static)
// member (CLASS Instance / Class Static) Unsafe
// ->member (CLASS) Unsafe
// ->_g$member() (CLASS) Safe Read
// _s$member(val) (CLASS) Safe Write
// .member (STRUCT)
// this->member (STRUCT with this)
//
Variable* pVar = (Variable*)item.pSymbol;
if(!hasPrevious) {
// Dump prefix
if(pVar->m_ownerClass != gCurrentAC) {
printf("%s::", pVar->m_ownerClass->getFullName(gCurrentAC));
}
}
writeMemberOrAccessor(pVar->m_modifier, false, id, hasPrevious, m_isAssignmentSide,((pVar->m_ownerClass->m_modifier & ATT_STRUCT) != 0));
}
break;
case EGENRE::_ACCESSOR:
{
Accessor* pAcc = (Accessor*)item.pSymbol;
if(!hasPrevious) {
// Dump prefix
if(pAcc->m_ownerClass != gCurrentAC) {
printf("%s::", pAcc->m_ownerClass->getFullName(gCurrentAC));
}
}
writeMemberOrAccessor(pAcc->m_modifier, true, id, hasPrevious, m_isAssignmentSide,((pAcc->m_ownerClass->m_modifier & ATT_STRUCT) != 0));
}
break;
case EGENRE::_ABSTRACTCONTAINER:
case EGENRE::_NAMESPACE:
{
if (hasPrevious) {
printf("::");
}
bool arrayDump = false;
if(item.symbolType == EGENRE::_ABSTRACTCONTAINER) {
AbstractContainer* pSpace = (AbstractContainer*)item.pSymbol;
if(pSpace->myType.m_typeID == TYPE_ARRAY) {
arrayDump = true;
}
}
NameSpace* pSpace = (NameSpace*)item.pSymbol;
if(arrayDump) {
printf("System::AbstractArray");
}
else {
printf("%s", hasPrevious ? pSpace->getName() : pSpace->getFullName(gCurrentAC));
}
}
break;
case EGENRE::_ENUM:
{
// No dependancy.
Enum* pEnum = (Enum*)item.pSymbol;
if (hasPrevious) {
printf("::");
}
else {
// Dump prefix
if(pEnum->m_parent != gCurrentAC) {
printf("%s::", pEnum->m_parent->getFullName(gCurrentAC));
}
}
printf("%s", pEnum->m_name);
}
break;
case EGENRE::_ENUMENTRY:
{
// No dependancy.
Enum::EnumEntry* pEnumEntry = (Enum::EnumEntry*)item.pSymbol;
if (hasPrevious) {
printf("::");
}
else {
// Should not happen
printf("%s::", pEnumEntry->m_parent->getFullName(gCurrentAC));
}
printf("%s", pEnumEntry->m_name);
}
break;
case EGENRE::_DELEGATE:
{
Delegate* pDelegate = (Delegate*)item.pSymbol;
if (hasPrevious) {
printf("::");
}
else {
// Dump prefix
if(pDelegate->getOwner() != gCurrentAC) {
printf("%s::", pDelegate->getOwner()->getFullName(gCurrentAC));
}
}
printf("_Delegate_Base_%s", pDelegate->getName());
}
break;
default:
compilerError(ERR_INTERNAL,"Unprocessed case", m_line);
}
hasPrevious = true;
}
const char* Method::getTemplateParams() {
char buff[500];
buff[0] = 0;
char* ptr = buff;
int delta;
if(m_genericParam) {
TypeGenericDefinitionEntry* genericSymbol = m_genericParam;
sprintf(ptr++, "<");
while(genericSymbol) {
delta = sprintf(ptr, "%s", genericSymbol->m_genericName);
ptr += delta;
if(genericSymbol = genericSymbol->m_pNextGenericEntry) {
sprintf(ptr, ", ");
ptr += 2;
}
}
sprintf(ptr, ">");
}
else {
// The method is not a template.
}
return concat(buff);
}
void Method::dumpTemplateLabel() {
if(m_genericParam) {
TypeGenericDefinitionEntry* genericSymbol = m_genericParam;
printf("template <");
while(genericSymbol) {
printf("typename %s", genericSymbol->m_genericName);
if(genericSymbol = genericSymbol->m_pNextGenericEntry) {
printf(", ");
}
}
printf("> ");
}
else {
// The class is not a template.
}
}
void Method::preFunc() {
if (this->m_modifier & ATT_STATIC) {
printf("::");
} else {
if (this->m_pOwner->m_modifier & ATT_STRUCT) {
printf(".");
} else {
printf("->");
}
}
}
void Method::dumpMarshalling() {
tab(); printf("{\n");
depth++;
// Convention for ref/out parameters : use pointers on the C++ side
// int, uint, float, double, bool, long, ...
// struct
// ref
// IntPtr
// []BaseType ou []IntPtr
//
bool isVoid = (this->m_returnType->m_typeID == TYPE_VOID);
tab();
if (!isVoid) {
printf("return ");
}
printf(this->getName());
printf("(");
Variable* params = this->m_parameters;
bool first = true;
while (params) {
TypeObject* pType = params->m_type;
if (!first) {
printf(",");
} else {
first = false;
}
if (pType->m_genreID == EGENRE::_ABSTRACTCONTAINER && pType->m_definitionAC->m_modifier & ATT_STRUCT) {
// Poor struct marshalling (1/2)
// TODO : struct marshalling method
printf("(s32%s)", (params->m_modifier & ATT_REF) == 0 ? "" : "*");
}
if((params->m_modifier & ATT_REF) != 0) {
printf("&");
}
if(pType->m_typeID & ET_BASETYPE) {
printf(params->getName());
}
else if(pType->m_typeID == TYPE_STRING) {
// For compatibility reason with Mono / .NET auto marshalling issue with string
// Not supported
// InternalUtils::NativeUTF8FromString
// printf("%s ? %s->_getUTF8() : NULL", params->getName(), params->getName());
compilerError(ERR_USER, "Please use IntPtr converted String instead of directly use String.", m_line);
}
else if (pType->m_genreID == EGENRE::_ENUM) {
printf(params->getName());
}
else if (pType->isArray() && (pType->m_rankCount == 1) && (pType->m_ranks[0].m_dimensionCount == 1)){
// Array of something.
if (pType->m_originalType) {
printf("%s ? (%s*)%s->_getPArray() : NULL", params->getName(), pType->m_originalType->dumpTypeForCode(gCurrentAC, gCurrentMethod), params->getName());
} else {
compilerError(ERR_INTERNAL, "Internal compiler error", m_line);
}
}
else if (pType->m_genreID == EGENRE::_ABSTRACTCONTAINER) {
AbstractContainer* pAC = pType->m_definitionAC;
if (pAC->m_modifier & ATT_STRUCT) {
pAC->dumpMarshalledStruct(params);
// Poor struct marshalling (2/2)
printf(" + 1");
}
else {
compilerError(ERR_USER, "Class objects need to be marshalled into IntPtr for extern functions", m_line);
}
} else {
compilerError(ERR_INTERNAL, "Should never arrive here.", m_line);
}
params = params->m_pNextVariable;
}
printf(");\n");
depth--;
tab(); printf("}\n");
}
void Method::dumpCall(Expression* expr, bool delegateCall, TypeGenericEntry* genericParams) {
if (!delegateCall) {
if (m_modifier & ATT_EXTERN) {
printf("_ext_");
// Ref extension added to ref only in case that the wrapper does NOT exist.
if (m_referenceModifCount) { printf("_ref_"); }
}
printf(this->getName());
if ((g_unsafe == false) && ((this->m_modifier & ATT_STATIC)==0)) {
printf("$");
}
if(g_unsafeEphemeral) { g_unsafe = false; g_unsafeEphemeral = false; }
}
if(genericParams) {
printf("<");
TypeGenericEntry* pGen = genericParams;
do {
printf("%s", pGen->m_genericName);
pGen = pGen->m_pNext;
if(pGen) {
printf(", ");
}
} while(pGen);
printf(">");
}
// [->] func[$] (CLASS)
// [.] func (STRUCT)
// [::] func (CLASS static)
printf("(");
Variable* pVar = this->m_parameters;
if(expr) {
if (expr->m_expressionType == EXPR_LIST) {
for (int n=0; n < expr->m_expressionCount; n++) {
if (n != 0) { printf(","); }
if(expr->m_expressions[n]->m_runtimeType->m_typeID == TYPE_NULL) {
// Wrap NULL as it is always ambiguous between two class types in C++, but not necessarily in C#
printf("(%s)", pVar->m_type->dumpTypeForCode(gCurrentAC));
}
expr->m_expressions[n]->dumpExpressionInternal();
pVar = pVar->m_pNextVariable;
}
} else {
compilerError(ERR_INTERNAL,"Internal Error", expr->m_line);
}
}
// Default parameters dump : for loop has LESS parameter than function interface.
bool isFirstTime = true;
while (pVar) {
if (pVar->m_expression) {
if ((!expr && !isFirstTime) || (expr && expr->m_expressionCount != 0)) {
printf(",");
}
isFirstTime = false;
pVar->m_expression->dumpExpressionInternal();
} else {
compilerError(ERR_INTERNAL,"Internal Error", expr->m_line);
}
pVar = pVar->m_pNextVariable;
}
printf(")");
}
const char* Delegate::generateTypeID() {
char buffer[1000];
sprintf(buffer, "ET_CLASS | %i", this->m_uniqueId);
return concat(buffer);
}
void Delegate::dumpDefinition(const char* prefix) {
char buffer[1000];
char buffer2[1000];
char buffer3[1000];
buffer[0] = 0;
buffer2[0] = 0;
buffer3[0] = 0;
const char* name = getName();
const char* retType = this->m_returnType->dumpTypeForCode(getOwner());
const char* signature = buffer; this->dumpParamsDef(buffer, false, true);
const char* call = buffer2; this->dumpParamsDef(buffer2, true, false);
const char* signatureSimple = buffer3; this->dumpParamsDef(buffer3, false, false);
bool isVoid = this->m_returnType->m_typeID == TYPE_VOID;
if(strcmp(prefix, "") != 0) {
prefix = concat2(prefix, "::");
}
tab(); printf("class %s_Delegate_Base_%s : public System::Delegate\n", prefix, name);
tab(); printf("{\n");
printf("private:\n");
tab(); printf("static const u32 _TYPEID = _TYPE_USEROBJECT | %s;\n", generateTypeID());
tab(); printf("public:\n");
tab(); printf(" virtual bool _isInstanceOf(u32 typeID) {\n");
tab(); printf("\t _INSTANCEOF(_Delegate_Base_%s,%s);\n",name, "System::Delegate");
tab(); printf(" }\n\n");
if (isVoid) {
tab(); printf(" inline void call$(%s) { CHCKTHIS; (*this)(%s); }\n",signature,call);
} else {
tab(); printf(" inline %s call$(%s) { CHCKTHIS; return (*this)(%s); }\n",retType,signature,call);
}
tab(); printf(" virtual %s operator() (%s)=0;\n", retType, signature);
tab(); printf(" virtual u32 _processGC() { return System::__GCObject::COMPLETE; }\n");
tab(); printf(" virtual void _releaseGC() { }\n");
tab(); printf("};\n");
tab(); printf("\n");
tab(); printf("template <class TClass> class %s_DelegateI_%s : public %s_Delegate_Base_%s\n",prefix,name,prefix,name);
tab(); printf("{\n");
tab(); printf("private:\n");
tab(); printf(" %s (TClass::*fpt)(%s);\n",retType, signatureSimple);
tab(); printf(" TClass* pt2Object;\n");
tab(); printf("public:\n");
tab(); printf("\n");
tab(); printf(" _DelegateI_%s(TClass* _pt2Object, %s(TClass::*_fpt)(%s)) {\n",name,retType,signatureSimple);
tab(); printf(" if (!_pt2Object) { THROW(CS_NEW System::ArgumentException()); }\n");
tab(); printf(" System::__GCObject::_RefSetValue((System::__GCObject**)&pt2Object, _pt2Object);\n");
tab(); printf(" fpt=_fpt;\n");
tab(); printf(" }\n");
tab(); printf("\n");
tab(); printf(" virtual u32 _processGC() { if (pt2Object) { System::Memory::pushList(pt2Object,0); } return System::__GCObject::COMPLETE; }\n");
tab(); printf(" virtual void _releaseGC() { if (pt2Object && !pt2Object->isFreed()) { pt2Object->_removeRef((System::__GCObject**)&pt2Object); } }\n");
tab(); printf(" virtual void _moveAlert(u32 offset) { \n");
tab(); printf(" _Delegate_Base_%s::_moveAlert(offset);\n", name);
tab(); printf(" u8* oldPtr; u8* newPtr;\n");
tab(); printf(" if(pt2Object) {\n");
tab(); printf(" newPtr = (u8*)(&pt2Object); oldPtr = newPtr - offset;\n");
tab(); printf(" pt2Object->_moveRef((__GCObject**)oldPtr,(__GCObject**)newPtr);\n");
tab(); printf(" }\n");
tab(); printf(" }\n");
tab(); printf("\n");
if (!isVoid) {
tab(); printf(" virtual %s operator()(%s) { return (*pt2Object.*fpt)(%s);}\n", retType,signature,call);
} else {
tab(); printf(" virtual void operator()(%s) { (*pt2Object.*fpt)(%s);}\n", signature, call);
}
tab(); printf("};\n");
tab(); printf("\n");
tab(); printf("class %s_DelegateS_%s : public %s_Delegate_Base_%s", prefix, name, prefix, name);
tab(); printf("{\n");
tab(); printf("private:\n");
tab(); printf(" %s (*fpt)(%s);\n",retType,signatureSimple);
tab(); printf("public:\n");
tab(); printf("\n");
tab(); printf(" _DelegateS_%s(%s(*_fpt)(%s))",name,retType,signatureSimple);
tab(); printf(" { fpt=_fpt; };\n");
tab(); printf("\n");
if (!isVoid) {
tab(); printf(" virtual %s operator()(%s) { return (*fpt)(%s); };\n",retType,signature,call);
} else {
tab(); printf(" virtual void operator()(%s) { (*fpt)(%s); };\n",signature,call);
}
tab(); printf("};\n");
tab(); printf("\n");
}
void dumpCopyVarDelegate(Variable* pVars) {
bool first = true;
while (pVars) {
if (!first) { printf(","); } else { first = false; }
if (strcmp("_this__", pVars->m_name) == 0) {
printf("this");
} else {
printf(pVars->m_name);
}
pVars = pVars->m_pNextVariable;
}
}
void Expression::dumpExpressionInternal() {
if(this->m_item.symbolType == _UNDEFGENRE) {
printf("[Symbol not found]");
return;
}
if(this->m_hasParenthesis) { printf("("); }
switch (this->m_expressionType) {
// Multiple
case EXPR_LIST:
for (int n=0; n < this->m_expressionCount; n++) {
if (n != 0) { printf(","); }
m_expressions[n]->dumpExpressionInternal();
}
// Nothing to solve when going up the expression stack.
// NO return type to do here. Function will take care.
break;
case EXPR_DELEGATECREATE:
{
// DelegateFct p2 = delegate(int a) { return B.myStr.Length; };
const char * anonName = this->m_anonymousClass->getName();
const char * delegateName = this->m_delegateDef->getName();
const char* anonPrefix = gStaticContextAC
? concat2(gStaticContextAC->getFullName(gRootNameSpace), "::")
: "";
const char* delegatePrefix = this->m_delegateDef->getOwner() == gCurrentAC
? ""
: concat2(this->m_delegateDef->getOwner()->getFullName(gCurrentAC), "::");
const char* prefixedAnonName = concat2(anonPrefix, anonName);
Variable* signature = this->m_delegateSignature;
/*char prefix[1000];
int strl = strlen(this->m_precNameSpace);
if (strl) {
sprintf(prefix,"%s::%s",precNameSpace,this->getName());
} else {
sprintf(prefix,"%s",this->getName());
}*/
Method* pM = m_anonymousClass->findMethod(anonName, (Variable*)NULL, NULL); // There will always be only one constructor, this is why no signature is required.
Variable* pListStart = pM->m_parameters;
if (gIsStaticFunc) {
printf("CS_NEW %s_DelegateS_%s(CS_NEW %s(",
delegatePrefix,
delegateName,
prefixedAnonName
);
dumpCopyVarDelegate(pListStart);
printf("), &%s_anon_%::_delegate);",
anonPrefix,
anonName
);
} else {
printf("CS_NEW %s_DelegateI_%s<%s>(CS_NEW %s(",
delegatePrefix,
/*DelegateType*/delegateName,
/*Template*/prefixedAnonName,
/*new*/prefixedAnonName
);
dumpCopyVarDelegate(pListStart);
printf("), &%s::_delegate)" ,
/*fct*/prefixedAnonName);
}
}
break;
// Leaf
case EXPR_UNDER_THIS:
printf("_this__");
break;
case EXPR_THIS:
printf("this");
break;
case EXPR_BASE:
// TODO : check if base can be used on a type different from "this" ?
// base.funct
// Constructor Class A(b):base(b)
/* In C++, base will be replaced by the prefix of the following dot expression,
so nothing needs to be done at this point */
break;
case EXPR_IDENT:
case EXPR_DOT:
{
NameSpace* pContext = gCurrentAC;
SRSymbol res;
bool hasPrevious;
if (m_expressionType == EXPR_IDENT) {
res.pSymbol = pContext;
res.symbolType = EGENRE::_ABSTRACTCONTAINER;
hasPrevious = false;
} else {
m_expressions[0]->dumpExpressionInternal();
if(m_expressions[0]->m_runtimeType) {
res = m_expressions[0]->m_runtimeType->m_res;
}
else {
// Namespaces don't have a runtime type
res = m_expressions[0]->m_item;
}
if(m_expressions[0]->m_expressionType == EXPR_BASE) {
hasPrevious = false;
g_unsafe = true;
g_unsafeEphemeral = true;
} else {
hasPrevious = true;
}
}
if (!m_bSkip) {
dumpTokens(res, this->m_text, hasPrevious);
}
}
break;
case EXPR_INVOKE:
{
//
// Descending and solving sub systems.
//
Method* pM = (Method*)m_item.pSymbol;
NameSpace* pContext = gCurrentAC;
if (pM->getGenre() == EGENRE::_DELEGATE) {
printf("");
m_expressions[0]->dumpExpressionInternal();
printf("->call$");
pM->dumpCall(m_expressions[1],true, m_genericCall);
} else {
m_expressions[0]->dumpExpressionInternal();
if(m_expressions[0]->m_expressionType != EXPR_IDENT
&& !(m_expressions[0]->m_expressionType == EXPR_DOT
&& m_expressions[0]->m_expressions[0]->m_expressionType == EXPR_BASE)) {
pM->preFunc();
}
pM->dumpCall(m_expressions[1],false, m_genericCall);
}
}
break;
// Double
case EXPR_ACCESS:
m_expressions[0]->dumpExpressionInternal();
if (!m_isAssignmentSide) {
printf("->_idx_g$");
} else {
printf("->_idx_s$");
}
printf("(");
if (m_expressions[1]) {
m_expressions[1]->dumpExpressionInternal();
}
if(!m_isAssignmentSide) {
printf(")");
} else {
printf(",");
// The rest is dumped by EXPR_ASS_EQ
}
break;
case EXPR_CTE:
switch (this->m_value.type) {
case TYPE_BOOL:
if (this->m_value.v.i) {
printf("true");
} else {
printf("false");
}
break;
case TYPE_STRING:
// Generated String* from constant.
printf("_$_cteStr%iObj",this->m_value.pString->m_id);
break;
case TYPE_NULL:
printf("NULL");
this->m_runtimeType = &t_NULL;
break;
case TYPE_DOUBLE:
printf("%f",this->m_value.v.d);
break;
case TYPE_FLOAT:
printf("%ff",this->m_value.v.f);
break;
case TYPE_INT:
printf("%i",this->m_value.v.i);
break;
case TYPE_UINT:
printf("%uu",this->m_value.v.i);
break;
case TYPE_LONG:
printf("%il",this->m_value.v.l);
break;
case TYPE_ULONG:
printf("%uul",this->m_value.v.i);
break;
case TYPE_CHAR:
if (this->m_value.v.i>=32 && this->m_value.v.i<127) {
printf("'%c'",this->m_value.v.i);
} else {
printf("0x%4X",this->m_value.v.i);
}
break;
default:
compilerError(ERR_INTERNAL,"internal error dump expression CTE", m_line);
break;
}
break;
case EXPR_PLUSPLUS:
case EXPR_MINUSMINUS:
case EXPR_PREINCR:
case EXPR_PREDECR:
case EXPR_ASS_EQ:
case EXPR_ASS_PLUSEQ:
case EXPR_ASS_MINUSEQ:
case EXPR_ASS_STAREQ:
case EXPR_ASS_DIVEQ:
case EXPR_ASS_MODEQ:
case EXPR_ASS_XOREQ:
case EXPR_ASS_ANDEQ:
case EXPR_ASS_OREQ:
case EXPR_ASS_RSHFTEQ:
case EXPR_ASS_LSHFTEQ:
dumpWrapper(this);
break;
case EXPR_NOT:
printf("!");
m_expressions[0]->dumpExpressionInternal();
break; // !
case EXPR_LNOT:
printf("~");
m_expressions[0]->dumpExpressionInternal();
break; // ~
case EXPR_UNARYPLUS:
printf("+");
m_expressions[0]->dumpExpressionInternal();
break;
gitextract_c2wkl9go/
├── .gitignore
├── .travis.yml
├── CSharpVersion/
│ ├── CSharp_CPPCompiler/
│ │ ├── CompilerProject/
│ │ │ ├── AbstractContainer.cpp
│ │ │ ├── AbstractContainer.h
│ │ │ ├── Accessor.cpp
│ │ │ ├── Attribute.cpp
│ │ │ ├── Attribute.h
│ │ │ ├── BaseType.h
│ │ │ ├── CompilerProject.cpp
│ │ │ ├── CompilerProject.sln
│ │ │ ├── CompilerProject.vcxproj
│ │ │ ├── CompilerProject.vcxproj.filters
│ │ │ ├── Dump.cpp
│ │ │ ├── Expression.cpp
│ │ │ ├── Expression.h
│ │ │ ├── Method.cpp
│ │ │ ├── NameSpace.cpp
│ │ │ ├── NameSpace.h
│ │ │ ├── Statement.cpp
│ │ │ ├── Statement.h
│ │ │ ├── Symbol.cpp
│ │ │ ├── Symbol.h
│ │ │ ├── TypeObject.cpp
│ │ │ ├── TypeObject.h
│ │ │ ├── UTF8Parse.h
│ │ │ ├── UTF8Parser.cpp
│ │ │ ├── Variable.cpp
│ │ │ ├── Variable.h
│ │ │ ├── bison.simple
│ │ │ ├── build.bat
│ │ │ ├── compilerLibrary.cpp
│ │ │ ├── compilerLibrary.h
│ │ │ ├── csharp.l
│ │ │ ├── csharp.y
│ │ │ ├── csharpcompiler.cpp
│ │ │ ├── csharpcompiler.cpp.output
│ │ │ ├── dirent.c
│ │ │ ├── dirent.h
│ │ │ ├── include.h
│ │ │ ├── lex.yy.h
│ │ │ ├── lexParser.inc
│ │ │ ├── stdafx.cpp
│ │ │ ├── stdafx.h
│ │ │ ├── supported.cs
│ │ │ ├── targetver.h
│ │ │ ├── unistd.h
│ │ │ └── y.tab.h
│ │ └── Compiler_Limitations.txt
│ ├── EnginePrototype/
│ │ ├── EnginePrototypeCS.csproj
│ │ ├── EnginePrototypeCS.sln
│ │ ├── FrameworkCore/
│ │ │ ├── CKLBException.cs
│ │ │ ├── GameObject.cs
│ │ │ ├── GameObjectFactory.cs
│ │ │ ├── NativeManagement.cs
│ │ │ ├── NodeIterator.cs
│ │ │ ├── Utils.cs
│ │ │ └── WrapperReg.cs
│ │ ├── Libs/
│ │ │ ├── CSAPP.cs
│ │ │ ├── CSAsset.cs
│ │ │ ├── CSBin.cs
│ │ │ ├── CSDB.cs
│ │ │ ├── CSData.cs
│ │ │ ├── CSDebug.cs
│ │ │ ├── CSEng.cs
│ │ │ ├── CSFont.cs
│ │ │ ├── CSGL.cs
│ │ │ ├── CSKey.cs
│ │ │ ├── CSLang.cs
│ │ │ ├── CSMatrix.cs
│ │ │ ├── CSRES.cs
│ │ │ ├── CSSound.cs
│ │ │ ├── CSSystem.cs
│ │ │ └── CSUI.cs
│ │ └── Wrappers/
│ │ ├── CKLBAsyncLoader.cs
│ │ ├── CKLBGenericTask.cs
│ │ ├── CKLBIntervalTimer.cs
│ │ ├── CKLBNetAPI.cs
│ │ ├── CKLBStoreService.cs
│ │ ├── CKLBTask.cs
│ │ ├── CKLBUICanvas.cs
│ │ ├── CKLBUIClip.cs
│ │ ├── CKLBUIControl.cs
│ │ ├── CKLBUIDebugItem.cs
│ │ ├── CKLBUIDragIcon.cs
│ │ ├── CKLBUIForm.cs
│ │ ├── CKLBUIFreeVertItem.cs
│ │ ├── CKLBUIGroup.cs
│ │ ├── CKLBUILabel.cs
│ │ ├── CKLBUIList.cs
│ │ ├── CKLBUIMoviePlayer.cs
│ │ ├── CKLBUIMultiImgItem.cs
│ │ ├── CKLBUIPieChart.cs
│ │ ├── CKLBUIPolyline.cs
│ │ ├── CKLBUIProgressBar.cs
│ │ ├── CKLBUIRubberBand.cs
│ │ ├── CKLBUISWFPlayer.cs
│ │ ├── CKLBUIScale9.cs
│ │ ├── CKLBUIScore.cs
│ │ ├── CKLBUIScrollBar.cs
│ │ ├── CKLBUISimpleItem.cs
│ │ ├── CKLBUITask.cs
│ │ ├── CKLBUITextInput.cs
│ │ ├── CKLBUITouchPad.cs
│ │ ├── CKLBUIVariableItem.cs
│ │ ├── CKLBUIVirtualDoc.cs
│ │ ├── CKLBUIWebArea.cs
│ │ └── IAmADocClass.cs
│ └── EnginePrototype.sln
├── Doc/
│ ├── Android_Build.md
│ ├── Documentation_CSharp.md
│ ├── Documentation_Libraries.md
│ ├── Documentation_Modules.md
│ ├── Documentation_Tasks.md
│ ├── How_to_run.md
│ ├── IPA_Font_License_Agreement_v1.0.txt
│ ├── LuaAPI/
│ │ ├── FAQ.html
│ │ ├── LIFECtrl.html
│ │ ├── ONLINE_Update.html
│ │ ├── PAUSECtrl.html
│ │ ├── README.md
│ │ ├── README_DOC.txt
│ │ ├── STORE_Service.html
│ │ ├── TASK_Generic.html
│ │ ├── UI_ActivityIndicator.html
│ │ ├── UI_Button.html
│ │ ├── UI_Clip.html
│ │ ├── UI_Control.html
│ │ ├── UI_DbgLabel.html
│ │ ├── UI_DragIcon.html
│ │ ├── UI_Form.html
│ │ ├── UI_FreeVertItem.html
│ │ ├── UI_Group.html
│ │ ├── UI_Label.html
│ │ ├── UI_List.html
│ │ ├── UI_MoviePlayer.html
│ │ ├── UI_MultiImgItem.html
│ │ ├── UI_PieChart.html
│ │ ├── UI_Polyline.html
│ │ ├── UI_ProgressBar.html
│ │ ├── UI_RubberBand.html
│ │ ├── UI_SWFPlayer.html
│ │ ├── UI_Score.html
│ │ ├── UI_ScrollBar.html
│ │ ├── UI_SimpleItem.html
│ │ ├── UI_TextInput.html
│ │ ├── UI_TouchPad.html
│ │ ├── UI_VariableItem.html
│ │ ├── UI_VirtualDoc.html
│ │ ├── UI_WebView.html
│ │ ├── UTIL_IntervalTimer.html
│ │ ├── assets/
│ │ │ ├── jquery.js
│ │ │ ├── search.js
│ │ │ ├── trac.css
│ │ │ ├── trac.js
│ │ │ └── wiki.css
│ │ ├── callbacks.html
│ │ ├── design_lua.html
│ │ ├── functions.html
│ │ ├── index.html
│ │ ├── modalstack.html
│ │ ├── properties.html
│ │ └── tree.html
│ ├── Modules/
│ │ ├── Allocators.txt
│ │ ├── Asset_Stream_Format/
│ │ │ ├── Asset_Naming_Convention.txt
│ │ │ ├── TEXB_stream_format.txt
│ │ │ └── TIMG_stream_format.txt
│ │ ├── Assets.txt
│ │ ├── Audio.txt
│ │ ├── Encryption.txt
│ │ ├── FileSystem.txt
│ │ ├── Network.txt
│ │ ├── Rendering.txt
│ │ ├── SceneGraph.txt
│ │ ├── Scripting.txt
│ │ └── Tasks.txt
│ ├── Project.md
│ ├── SysCommandsList.xls
│ └── Toboggan/
│ ├── README.md
│ ├── Toboggan_Operation_Manual_JPN.docx
│ └── Toboggan_Plugin_Manual_JPN.docx
├── Engine/
│ ├── include/
│ │ ├── BaseType.h
│ │ ├── FileSystem.h
│ │ ├── ITmpFile.h
│ │ ├── OSWidget.h
│ │ ├── assert_klb.h
│ │ └── klb_vararg.h
│ ├── libs/
│ │ ├── JSonParser/
│ │ │ ├── api/
│ │ │ │ ├── yajl_common.h
│ │ │ │ ├── yajl_gen.h
│ │ │ │ ├── yajl_parse.h
│ │ │ │ └── yajl_tree.h
│ │ │ ├── important.txt
│ │ │ ├── json_binary_parser.c
│ │ │ ├── msg_pack_parser.c
│ │ │ ├── yajl.c
│ │ │ ├── yajl_alloc.c
│ │ │ ├── yajl_alloc.h
│ │ │ ├── yajl_assert.h
│ │ │ ├── yajl_buf.c
│ │ │ ├── yajl_buf.h
│ │ │ ├── yajl_bytestack.h
│ │ │ ├── yajl_encode.c
│ │ │ ├── yajl_encode.h
│ │ │ ├── yajl_gen.c
│ │ │ ├── yajl_lex.c
│ │ │ ├── yajl_lex.h
│ │ │ ├── yajl_parser.c
│ │ │ ├── yajl_parser.h
│ │ │ ├── yajl_tree.c
│ │ │ └── yajl_version.c
│ │ ├── RuntimeCSharp/
│ │ │ ├── CompilerProject/
│ │ │ │ └── BaseType.h
│ │ │ └── RuntimeLibrary/
│ │ │ ├── CS_Array.cpp
│ │ │ ├── CS_Array.h
│ │ │ ├── CS_Console.cpp
│ │ │ ├── CS_Console.h
│ │ │ ├── CS_Exception.cpp
│ │ │ ├── CS_Marshal.h
│ │ │ ├── CS_Math.h
│ │ │ ├── CS_Memory.cpp
│ │ │ ├── CS_Memory.h
│ │ │ ├── CS_Object.cpp
│ │ │ ├── CS_Object.h
│ │ │ ├── CS_String.cpp
│ │ │ ├── CS_String.h
│ │ │ ├── CS_System.cpp
│ │ │ ├── CS_System.h
│ │ │ ├── Collections/
│ │ │ │ ├── Collections.h
│ │ │ │ └── Generic/
│ │ │ │ ├── CS_Dictionary.cpp
│ │ │ │ ├── CS_Dictionary.h
│ │ │ │ ├── CS_List.cpp
│ │ │ │ ├── CS_List.h
│ │ │ │ └── Generic.h
│ │ │ ├── InternalUtils.cpp
│ │ │ ├── InternalUtils.h
│ │ │ ├── MarshallingUtils.cpp
│ │ │ ├── MarshallingUtils.h
│ │ │ ├── RuntimeCSharp.sln
│ │ │ ├── RuntimeCSharp.vcxproj
│ │ │ ├── TestSuite/
│ │ │ │ ├── MemoryTests.cpp
│ │ │ │ └── MemoryTests.h
│ │ │ ├── inline/
│ │ │ │ ├── __InternalUtilsGetTypeID_specializations.inl
│ │ │ │ └── classPrototypes.inl
│ │ │ ├── main.cpp
│ │ │ ├── stdafx.cpp
│ │ │ ├── stdafx.h
│ │ │ └── targetver.h
│ │ ├── SQLite/
│ │ │ ├── sqlite3.c
│ │ │ ├── sqlite3.h
│ │ │ └── sqlite3ext.h
│ │ ├── Tremolo/
│ │ │ ├── asm_arm.h
│ │ │ ├── bitwise.c
│ │ │ ├── bitwiseARM.s
│ │ │ ├── codebook.c
│ │ │ ├── codebook.h
│ │ │ ├── codec_internal.h
│ │ │ ├── config_types.h
│ │ │ ├── dpen.s
│ │ │ ├── dsp.c
│ │ │ ├── floor0.c
│ │ │ ├── floor1.c
│ │ │ ├── floor1ARM.s
│ │ │ ├── floor1LARM.s
│ │ │ ├── floor_lookup.c
│ │ │ ├── framing.c
│ │ │ ├── ivorbiscodec.h
│ │ │ ├── ivorbisfile.h
│ │ │ ├── lsp_lookup.h
│ │ │ ├── mapping0.c
│ │ │ ├── mdct.c
│ │ │ ├── mdct.h
│ │ │ ├── mdctARM.s
│ │ │ ├── mdctLARM.s
│ │ │ ├── mdct_lookup.h
│ │ │ ├── misc.c
│ │ │ ├── misc.h
│ │ │ ├── ogg.h
│ │ │ ├── os.h
│ │ │ ├── os_types.h
│ │ │ ├── res012.c
│ │ │ ├── treminfo.c
│ │ │ ├── vorbisfile.c
│ │ │ └── window_lookup.h
│ │ ├── curl-7.29.0-minimal/
│ │ │ ├── include/
│ │ │ │ └── curl/
│ │ │ │ ├── curl.h
│ │ │ │ ├── curlbuild.h
│ │ │ │ ├── curlbuild.h.in
│ │ │ │ ├── curlrules.h
│ │ │ │ ├── curlver.h
│ │ │ │ ├── easy.h
│ │ │ │ ├── mprintf.h
│ │ │ │ ├── multi.h
│ │ │ │ ├── stdcheaders.h
│ │ │ │ └── typecheck-gcc.h
│ │ │ ├── lib/
│ │ │ │ ├── amigaos.c
│ │ │ │ ├── amigaos.h
│ │ │ │ ├── arpa_telnet.h
│ │ │ │ ├── asyn-ares.c
│ │ │ │ ├── asyn-thread.c
│ │ │ │ ├── asyn.h
│ │ │ │ ├── axtls.c
│ │ │ │ ├── axtls.h
│ │ │ │ ├── base64.c
│ │ │ │ ├── bundles.c
│ │ │ │ ├── bundles.h
│ │ │ │ ├── config-amigaos.h
│ │ │ │ ├── config-dos.h
│ │ │ │ ├── config-mac.h
│ │ │ │ ├── config-os400.h
│ │ │ │ ├── config-riscos.h
│ │ │ │ ├── config-symbian.h
│ │ │ │ ├── config-tpf.h
│ │ │ │ ├── config-vxworks.h
│ │ │ │ ├── config-win32.h
│ │ │ │ ├── config-win32ce.h
│ │ │ │ ├── conncache.c
│ │ │ │ ├── conncache.h
│ │ │ │ ├── connect.c
│ │ │ │ ├── connect.h
│ │ │ │ ├── content_encoding.c
│ │ │ │ ├── content_encoding.h
│ │ │ │ ├── cookie.c
│ │ │ │ ├── cookie.h
│ │ │ │ ├── curl_addrinfo.c
│ │ │ │ ├── curl_addrinfo.h
│ │ │ │ ├── curl_base64.h
│ │ │ │ ├── curl_config.h.in
│ │ │ │ ├── curl_darwinssl.c
│ │ │ │ ├── curl_darwinssl.h
│ │ │ │ ├── curl_fnmatch.c
│ │ │ │ ├── curl_fnmatch.h
│ │ │ │ ├── curl_gethostname.c
│ │ │ │ ├── curl_gethostname.h
│ │ │ │ ├── curl_gssapi.c
│ │ │ │ ├── curl_gssapi.h
│ │ │ │ ├── curl_hmac.h
│ │ │ │ ├── curl_ldap.h
│ │ │ │ ├── curl_md4.h
│ │ │ │ ├── curl_md5.h
│ │ │ │ ├── curl_memory.h
│ │ │ │ ├── curl_memrchr.c
│ │ │ │ ├── curl_memrchr.h
│ │ │ │ ├── curl_multibyte.c
│ │ │ │ ├── curl_multibyte.h
│ │ │ │ ├── curl_ntlm.c
│ │ │ │ ├── curl_ntlm.h
│ │ │ │ ├── curl_ntlm_core.c
│ │ │ │ ├── curl_ntlm_core.h
│ │ │ │ ├── curl_ntlm_msgs.c
│ │ │ │ ├── curl_ntlm_msgs.h
│ │ │ │ ├── curl_ntlm_wb.c
│ │ │ │ ├── curl_ntlm_wb.h
│ │ │ │ ├── curl_rand.c
│ │ │ │ ├── curl_rand.h
│ │ │ │ ├── curl_rtmp.c
│ │ │ │ ├── curl_rtmp.h
│ │ │ │ ├── curl_sasl.c
│ │ │ │ ├── curl_sasl.h
│ │ │ │ ├── curl_schannel.c
│ │ │ │ ├── curl_schannel.h
│ │ │ │ ├── curl_setup.h
│ │ │ │ ├── curl_setup_once.h
│ │ │ │ ├── curl_sspi.c
│ │ │ │ ├── curl_sspi.h
│ │ │ │ ├── curl_threads.c
│ │ │ │ ├── curl_threads.h
│ │ │ │ ├── curlx.h
│ │ │ │ ├── cyassl.c
│ │ │ │ ├── cyassl.h
│ │ │ │ ├── dict.c
│ │ │ │ ├── dict.h
│ │ │ │ ├── easy.c
│ │ │ │ ├── easyif.h
│ │ │ │ ├── escape.c
│ │ │ │ ├── escape.h
│ │ │ │ ├── file.c
│ │ │ │ ├── file.h
│ │ │ │ ├── fileinfo.c
│ │ │ │ ├── fileinfo.h
│ │ │ │ ├── formdata.c
│ │ │ │ ├── formdata.h
│ │ │ │ ├── ftp.c
│ │ │ │ ├── ftp.h
│ │ │ │ ├── ftplistparser.c
│ │ │ │ ├── ftplistparser.h
│ │ │ │ ├── getenv.c
│ │ │ │ ├── getinfo.c
│ │ │ │ ├── getinfo.h
│ │ │ │ ├── gopher.c
│ │ │ │ ├── gopher.h
│ │ │ │ ├── gtls.c
│ │ │ │ ├── gtls.h
│ │ │ │ ├── hash.c
│ │ │ │ ├── hash.h
│ │ │ │ ├── hmac.c
│ │ │ │ ├── hostasyn.c
│ │ │ │ ├── hostcheck.c
│ │ │ │ ├── hostcheck.h
│ │ │ │ ├── hostip.c
│ │ │ │ ├── hostip.h
│ │ │ │ ├── hostip4.c
│ │ │ │ ├── hostip6.c
│ │ │ │ ├── hostsyn.c
│ │ │ │ ├── http.c
│ │ │ │ ├── http.h
│ │ │ │ ├── http_chunks.c
│ │ │ │ ├── http_chunks.h
│ │ │ │ ├── http_digest.c
│ │ │ │ ├── http_digest.h
│ │ │ │ ├── http_negotiate.c
│ │ │ │ ├── http_negotiate.h
│ │ │ │ ├── http_negotiate_sspi.c
│ │ │ │ ├── http_proxy.c
│ │ │ │ ├── http_proxy.h
│ │ │ │ ├── idn_win32.c
│ │ │ │ ├── if2ip.c
│ │ │ │ ├── if2ip.h
│ │ │ │ ├── imap.c
│ │ │ │ ├── imap.h
│ │ │ │ ├── inet_ntop.c
│ │ │ │ ├── inet_ntop.h
│ │ │ │ ├── inet_pton.c
│ │ │ │ ├── inet_pton.h
│ │ │ │ ├── krb4.c
│ │ │ │ ├── krb4.h
│ │ │ │ ├── krb5.c
│ │ │ │ ├── ldap.c
│ │ │ │ ├── libcurl.vers.in
│ │ │ │ ├── llist.c
│ │ │ │ ├── llist.h
│ │ │ │ ├── md4.c
│ │ │ │ ├── md5.c
│ │ │ │ ├── memdebug.c
│ │ │ │ ├── memdebug.h
│ │ │ │ ├── mprintf.c
│ │ │ │ ├── multi.c
│ │ │ │ ├── multihandle.h
│ │ │ │ ├── multiif.h
│ │ │ │ ├── netrc.c
│ │ │ │ ├── netrc.h
│ │ │ │ ├── non-ascii.c
│ │ │ │ ├── non-ascii.h
│ │ │ │ ├── nonblock.c
│ │ │ │ ├── nonblock.h
│ │ │ │ ├── nss.c
│ │ │ │ ├── nssg.h
│ │ │ │ ├── nwlib.c
│ │ │ │ ├── nwos.c
│ │ │ │ ├── objnames.inc
│ │ │ │ ├── openldap.c
│ │ │ │ ├── parsedate.c
│ │ │ │ ├── parsedate.h
│ │ │ │ ├── pingpong.c
│ │ │ │ ├── pingpong.h
│ │ │ │ ├── polarssl.c
│ │ │ │ ├── polarssl.h
│ │ │ │ ├── pop3.c
│ │ │ │ ├── pop3.h
│ │ │ │ ├── progress.c
│ │ │ │ ├── progress.h
│ │ │ │ ├── qssl.c
│ │ │ │ ├── qssl.h
│ │ │ │ ├── rawstr.c
│ │ │ │ ├── rawstr.h
│ │ │ │ ├── rtsp.c
│ │ │ │ ├── rtsp.h
│ │ │ │ ├── security.c
│ │ │ │ ├── select.c
│ │ │ │ ├── select.h
│ │ │ │ ├── sendf.c
│ │ │ │ ├── sendf.h
│ │ │ │ ├── setup-os400.h
│ │ │ │ ├── setup-vms.h
│ │ │ │ ├── share.c
│ │ │ │ ├── share_curl.h
│ │ │ │ ├── slist.c
│ │ │ │ ├── slist.h
│ │ │ │ ├── smtp.c
│ │ │ │ ├── smtp.h
│ │ │ │ ├── sockaddr.h
│ │ │ │ ├── socks.c
│ │ │ │ ├── socks.h
│ │ │ │ ├── socks_gssapi.c
│ │ │ │ ├── socks_sspi.c
│ │ │ │ ├── speedcheck.c
│ │ │ │ ├── speedcheck.h
│ │ │ │ ├── splay.c
│ │ │ │ ├── splay.h
│ │ │ │ ├── ssh.c
│ │ │ │ ├── ssh.h
│ │ │ │ ├── sslgen.c
│ │ │ │ ├── sslgen.h
│ │ │ │ ├── ssluse.c
│ │ │ │ ├── ssluse.h
│ │ │ │ ├── strdup.c
│ │ │ │ ├── strdup.h
│ │ │ │ ├── strequal.c
│ │ │ │ ├── strequal.h
│ │ │ │ ├── strerror.c
│ │ │ │ ├── strerror.h
│ │ │ │ ├── strtok.c
│ │ │ │ ├── strtok.h
│ │ │ │ ├── strtoofft.c
│ │ │ │ ├── strtoofft.h
│ │ │ │ ├── telnet.c
│ │ │ │ ├── telnet.h
│ │ │ │ ├── tftp.c
│ │ │ │ ├── tftp.h
│ │ │ │ ├── timeval.c
│ │ │ │ ├── timeval.h
│ │ │ │ ├── transfer.c
│ │ │ │ ├── transfer.h
│ │ │ │ ├── url.c
│ │ │ │ ├── url.h
│ │ │ │ ├── urldata.h
│ │ │ │ ├── version.c
│ │ │ │ ├── warnless.c
│ │ │ │ ├── warnless.h
│ │ │ │ ├── wildcard.c
│ │ │ │ └── wildcard.h
│ │ │ └── src/
│ │ │ ├── tool_binmode.c
│ │ │ ├── tool_binmode.h
│ │ │ ├── tool_bname.c
│ │ │ ├── tool_bname.h
│ │ │ ├── tool_cb_dbg.c
│ │ │ ├── tool_cb_dbg.h
│ │ │ ├── tool_cb_hdr.c
│ │ │ ├── tool_cb_hdr.h
│ │ │ ├── tool_cb_prg.c
│ │ │ ├── tool_cb_prg.h
│ │ │ ├── tool_cb_rea.c
│ │ │ ├── tool_cb_rea.h
│ │ │ ├── tool_cb_see.c
│ │ │ ├── tool_cb_see.h
│ │ │ ├── tool_cb_wrt.c
│ │ │ ├── tool_cb_wrt.h
│ │ │ ├── tool_cfgable.c
│ │ │ ├── tool_cfgable.h
│ │ │ ├── tool_convert.c
│ │ │ ├── tool_convert.h
│ │ │ ├── tool_dirhie.c
│ │ │ ├── tool_dirhie.h
│ │ │ ├── tool_doswin.c
│ │ │ ├── tool_doswin.h
│ │ │ ├── tool_easysrc.c
│ │ │ ├── tool_easysrc.h
│ │ │ ├── tool_formparse.c
│ │ │ ├── tool_formparse.h
│ │ │ ├── tool_getparam.c
│ │ │ ├── tool_getparam.h
│ │ │ ├── tool_getpass.c
│ │ │ ├── tool_getpass.h
│ │ │ ├── tool_help.c
│ │ │ ├── tool_help.h
│ │ │ ├── tool_helpers.c
│ │ │ ├── tool_helpers.h
│ │ │ ├── tool_homedir.c
│ │ │ ├── tool_homedir.h
│ │ │ ├── tool_hugehelp.c
│ │ │ ├── tool_hugehelp.h
│ │ │ ├── tool_libinfo.c
│ │ │ ├── tool_libinfo.h
│ │ │ ├── tool_main.c
│ │ │ ├── tool_main.h
│ │ │ ├── tool_metalink.c
│ │ │ ├── tool_metalink.h
│ │ │ ├── tool_mfiles.c
│ │ │ ├── tool_mfiles.h
│ │ │ ├── tool_msgs.c
│ │ │ ├── tool_msgs.h
│ │ │ ├── tool_operate.c
│ │ │ ├── tool_operate.h
│ │ │ ├── tool_operhlp.c
│ │ │ ├── tool_operhlp.h
│ │ │ ├── tool_panykey.c
│ │ │ ├── tool_panykey.h
│ │ │ ├── tool_paramhlp.c
│ │ │ ├── tool_paramhlp.h
│ │ │ ├── tool_parsecfg.c
│ │ │ ├── tool_parsecfg.h
│ │ │ ├── tool_sdecls.h
│ │ │ ├── tool_setopt.c
│ │ │ ├── tool_setopt.h
│ │ │ ├── tool_setup.h
│ │ │ ├── tool_sleep.c
│ │ │ ├── tool_sleep.h
│ │ │ ├── tool_urlglob.c
│ │ │ ├── tool_urlglob.h
│ │ │ ├── tool_util.c
│ │ │ ├── tool_util.h
│ │ │ ├── tool_version.h
│ │ │ ├── tool_vms.c
│ │ │ ├── tool_vms.h
│ │ │ ├── tool_writeenv.c
│ │ │ ├── tool_writeenv.h
│ │ │ ├── tool_writeout.c
│ │ │ ├── tool_writeout.h
│ │ │ ├── tool_xattr.c
│ │ │ ├── tool_xattr.h
│ │ │ └── version.h
│ │ ├── freeType/
│ │ │ ├── include/
│ │ │ │ ├── freetype/
│ │ │ │ │ ├── config/
│ │ │ │ │ │ ├── ftconfig.h
│ │ │ │ │ │ ├── ftheader.h
│ │ │ │ │ │ ├── ftmodule.h
│ │ │ │ │ │ ├── ftoption.h
│ │ │ │ │ │ └── ftstdlib.h
│ │ │ │ │ ├── freetype.h
│ │ │ │ │ ├── ftadvanc.h
│ │ │ │ │ ├── ftautoh.h
│ │ │ │ │ ├── ftbbox.h
│ │ │ │ │ ├── ftbdf.h
│ │ │ │ │ ├── ftbitmap.h
│ │ │ │ │ ├── ftbzip2.h
│ │ │ │ │ ├── ftcache.h
│ │ │ │ │ ├── ftchapters.h
│ │ │ │ │ ├── ftcid.h
│ │ │ │ │ ├── fterrdef.h
│ │ │ │ │ ├── fterrors.h
│ │ │ │ │ ├── ftgasp.h
│ │ │ │ │ ├── ftglyph.h
│ │ │ │ │ ├── ftgxval.h
│ │ │ │ │ ├── ftgzip.h
│ │ │ │ │ ├── ftimage.h
│ │ │ │ │ ├── ftincrem.h
│ │ │ │ │ ├── ftlcdfil.h
│ │ │ │ │ ├── ftlist.h
│ │ │ │ │ ├── ftlzw.h
│ │ │ │ │ ├── ftmac.h
│ │ │ │ │ ├── ftmm.h
│ │ │ │ │ ├── ftmodapi.h
│ │ │ │ │ ├── ftmoderr.h
│ │ │ │ │ ├── ftotval.h
│ │ │ │ │ ├── ftoutln.h
│ │ │ │ │ ├── ftpfr.h
│ │ │ │ │ ├── ftrender.h
│ │ │ │ │ ├── ftsizes.h
│ │ │ │ │ ├── ftsnames.h
│ │ │ │ │ ├── ftstroke.h
│ │ │ │ │ ├── ftsynth.h
│ │ │ │ │ ├── ftsystem.h
│ │ │ │ │ ├── fttrigon.h
│ │ │ │ │ ├── fttypes.h
│ │ │ │ │ ├── ftwinfnt.h
│ │ │ │ │ ├── ftxf86.h
│ │ │ │ │ ├── internal/
│ │ │ │ │ │ ├── autohint.h
│ │ │ │ │ │ ├── ftcalc.h
│ │ │ │ │ │ ├── ftdebug.h
│ │ │ │ │ │ ├── ftdriver.h
│ │ │ │ │ │ ├── ftgloadr.h
│ │ │ │ │ │ ├── ftmemory.h
│ │ │ │ │ │ ├── ftobjs.h
│ │ │ │ │ │ ├── ftpic.h
│ │ │ │ │ │ ├── ftrfork.h
│ │ │ │ │ │ ├── ftserv.h
│ │ │ │ │ │ ├── ftstream.h
│ │ │ │ │ │ ├── fttrace.h
│ │ │ │ │ │ ├── ftvalid.h
│ │ │ │ │ │ ├── internal.h
│ │ │ │ │ │ ├── psaux.h
│ │ │ │ │ │ ├── pshints.h
│ │ │ │ │ │ ├── services/
│ │ │ │ │ │ │ ├── svbdf.h
│ │ │ │ │ │ │ ├── svcid.h
│ │ │ │ │ │ │ ├── svgldict.h
│ │ │ │ │ │ │ ├── svgxval.h
│ │ │ │ │ │ │ ├── svkern.h
│ │ │ │ │ │ │ ├── svmm.h
│ │ │ │ │ │ │ ├── svotval.h
│ │ │ │ │ │ │ ├── svpfr.h
│ │ │ │ │ │ │ ├── svpostnm.h
│ │ │ │ │ │ │ ├── svprop.h
│ │ │ │ │ │ │ ├── svpscmap.h
│ │ │ │ │ │ │ ├── svpsinfo.h
│ │ │ │ │ │ │ ├── svsfnt.h
│ │ │ │ │ │ │ ├── svttcmap.h
│ │ │ │ │ │ │ ├── svtteng.h
│ │ │ │ │ │ │ ├── svttglyf.h
│ │ │ │ │ │ │ ├── svwinfnt.h
│ │ │ │ │ │ │ └── svxf86nm.h
│ │ │ │ │ │ ├── sfnt.h
│ │ │ │ │ │ ├── t1types.h
│ │ │ │ │ │ └── tttypes.h
│ │ │ │ │ ├── t1tables.h
│ │ │ │ │ ├── ttnameid.h
│ │ │ │ │ ├── tttables.h
│ │ │ │ │ ├── tttags.h
│ │ │ │ │ └── ttunpat.h
│ │ │ │ └── ft2build.h
│ │ │ └── src/
│ │ │ ├── Jamfile
│ │ │ ├── autofit/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── afangles.c
│ │ │ │ ├── afangles.h
│ │ │ │ ├── afcjk.c
│ │ │ │ ├── afcjk.h
│ │ │ │ ├── afdummy.c
│ │ │ │ ├── afdummy.h
│ │ │ │ ├── aferrors.h
│ │ │ │ ├── afglobal.c
│ │ │ │ ├── afglobal.h
│ │ │ │ ├── afhints.c
│ │ │ │ ├── afhints.h
│ │ │ │ ├── afindic.c
│ │ │ │ ├── afindic.h
│ │ │ │ ├── aflatin.c
│ │ │ │ ├── aflatin.h
│ │ │ │ ├── aflatin2.c
│ │ │ │ ├── aflatin2.h
│ │ │ │ ├── afloader.c
│ │ │ │ ├── afloader.h
│ │ │ │ ├── afmodule.c
│ │ │ │ ├── afmodule.h
│ │ │ │ ├── afpic.c
│ │ │ │ ├── afpic.h
│ │ │ │ ├── aftypes.h
│ │ │ │ ├── afwarp.c
│ │ │ │ ├── afwarp.h
│ │ │ │ ├── autofit.c
│ │ │ │ ├── module.mk
│ │ │ │ └── rules.mk
│ │ │ ├── base/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── basepic.c
│ │ │ │ ├── basepic.h
│ │ │ │ ├── ftadvanc.c
│ │ │ │ ├── ftapi.c
│ │ │ │ ├── ftbase.c
│ │ │ │ ├── ftbase.h
│ │ │ │ ├── ftbbox.c
│ │ │ │ ├── ftbdf.c
│ │ │ │ ├── ftbitmap.c
│ │ │ │ ├── ftcalc.c
│ │ │ │ ├── ftcid.c
│ │ │ │ ├── ftdbgmem.c
│ │ │ │ ├── ftdebug.c
│ │ │ │ ├── ftfstype.c
│ │ │ │ ├── ftgasp.c
│ │ │ │ ├── ftgloadr.c
│ │ │ │ ├── ftglyph.c
│ │ │ │ ├── ftgxval.c
│ │ │ │ ├── ftinit.c
│ │ │ │ ├── ftlcdfil.c
│ │ │ │ ├── ftmac.c
│ │ │ │ ├── ftmm.c
│ │ │ │ ├── ftobjs.c
│ │ │ │ ├── ftotval.c
│ │ │ │ ├── ftoutln.c
│ │ │ │ ├── ftpatent.c
│ │ │ │ ├── ftpfr.c
│ │ │ │ ├── ftpic.c
│ │ │ │ ├── ftrfork.c
│ │ │ │ ├── ftsnames.c
│ │ │ │ ├── ftstream.c
│ │ │ │ ├── ftstroke.c
│ │ │ │ ├── ftsynth.c
│ │ │ │ ├── ftsystem.c
│ │ │ │ ├── fttrigon.c
│ │ │ │ ├── fttype1.c
│ │ │ │ ├── ftutil.c
│ │ │ │ ├── ftwinfnt.c
│ │ │ │ ├── ftxf86.c
│ │ │ │ └── rules.mk
│ │ │ ├── bdf/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── README
│ │ │ │ ├── bdf.c
│ │ │ │ ├── bdf.h
│ │ │ │ ├── bdfdrivr.c
│ │ │ │ ├── bdfdrivr.h
│ │ │ │ ├── bdferror.h
│ │ │ │ ├── bdflib.c
│ │ │ │ ├── module.mk
│ │ │ │ └── rules.mk
│ │ │ ├── bzip2/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── ftbzip2.c
│ │ │ │ └── rules.mk
│ │ │ ├── cache/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── ftcache.c
│ │ │ │ ├── ftcbasic.c
│ │ │ │ ├── ftccache.c
│ │ │ │ ├── ftccache.h
│ │ │ │ ├── ftccback.h
│ │ │ │ ├── ftccmap.c
│ │ │ │ ├── ftcerror.h
│ │ │ │ ├── ftcglyph.c
│ │ │ │ ├── ftcglyph.h
│ │ │ │ ├── ftcimage.c
│ │ │ │ ├── ftcimage.h
│ │ │ │ ├── ftcmanag.c
│ │ │ │ ├── ftcmanag.h
│ │ │ │ ├── ftcmru.c
│ │ │ │ ├── ftcmru.h
│ │ │ │ ├── ftcsbits.c
│ │ │ │ ├── ftcsbits.h
│ │ │ │ └── rules.mk
│ │ │ ├── cff/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── cff.c
│ │ │ │ ├── cffcmap.c
│ │ │ │ ├── cffcmap.h
│ │ │ │ ├── cffdrivr.c
│ │ │ │ ├── cffdrivr.h
│ │ │ │ ├── cfferrs.h
│ │ │ │ ├── cffgload.c
│ │ │ │ ├── cffgload.h
│ │ │ │ ├── cffload.c
│ │ │ │ ├── cffload.h
│ │ │ │ ├── cffobjs.c
│ │ │ │ ├── cffobjs.h
│ │ │ │ ├── cffparse.c
│ │ │ │ ├── cffparse.h
│ │ │ │ ├── cffpic.c
│ │ │ │ ├── cffpic.h
│ │ │ │ ├── cfftoken.h
│ │ │ │ ├── cfftypes.h
│ │ │ │ ├── module.mk
│ │ │ │ └── rules.mk
│ │ │ ├── cid/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── ciderrs.h
│ │ │ │ ├── cidgload.c
│ │ │ │ ├── cidgload.h
│ │ │ │ ├── cidload.c
│ │ │ │ ├── cidload.h
│ │ │ │ ├── cidobjs.c
│ │ │ │ ├── cidobjs.h
│ │ │ │ ├── cidparse.c
│ │ │ │ ├── cidparse.h
│ │ │ │ ├── cidriver.c
│ │ │ │ ├── cidriver.h
│ │ │ │ ├── cidtoken.h
│ │ │ │ ├── module.mk
│ │ │ │ ├── rules.mk
│ │ │ │ └── type1cid.c
│ │ │ ├── ftdebug.c
│ │ │ ├── gxvalid/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── README
│ │ │ │ ├── gxvalid.c
│ │ │ │ ├── gxvalid.h
│ │ │ │ ├── gxvbsln.c
│ │ │ │ ├── gxvcommn.c
│ │ │ │ ├── gxvcommn.h
│ │ │ │ ├── gxverror.h
│ │ │ │ ├── gxvfeat.c
│ │ │ │ ├── gxvfeat.h
│ │ │ │ ├── gxvfgen.c
│ │ │ │ ├── gxvjust.c
│ │ │ │ ├── gxvkern.c
│ │ │ │ ├── gxvlcar.c
│ │ │ │ ├── gxvmod.c
│ │ │ │ ├── gxvmod.h
│ │ │ │ ├── gxvmort.c
│ │ │ │ ├── gxvmort.h
│ │ │ │ ├── gxvmort0.c
│ │ │ │ ├── gxvmort1.c
│ │ │ │ ├── gxvmort2.c
│ │ │ │ ├── gxvmort4.c
│ │ │ │ ├── gxvmort5.c
│ │ │ │ ├── gxvmorx.c
│ │ │ │ ├── gxvmorx.h
│ │ │ │ ├── gxvmorx0.c
│ │ │ │ ├── gxvmorx1.c
│ │ │ │ ├── gxvmorx2.c
│ │ │ │ ├── gxvmorx4.c
│ │ │ │ ├── gxvmorx5.c
│ │ │ │ ├── gxvopbd.c
│ │ │ │ ├── gxvprop.c
│ │ │ │ ├── gxvtrak.c
│ │ │ │ ├── module.mk
│ │ │ │ └── rules.mk
│ │ │ ├── gzip/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── adler32.c
│ │ │ │ ├── ftgzip.c
│ │ │ │ ├── infblock.c
│ │ │ │ ├── infblock.h
│ │ │ │ ├── infcodes.c
│ │ │ │ ├── infcodes.h
│ │ │ │ ├── inffixed.h
│ │ │ │ ├── inflate.c
│ │ │ │ ├── inftrees.c
│ │ │ │ ├── inftrees.h
│ │ │ │ ├── infutil.c
│ │ │ │ ├── infutil.h
│ │ │ │ ├── rules.mk
│ │ │ │ ├── zconf.h
│ │ │ │ ├── zlib.h
│ │ │ │ ├── zutil.c
│ │ │ │ └── zutil.h
│ │ │ ├── lzw/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── ftlzw.c
│ │ │ │ ├── ftzopen.c
│ │ │ │ ├── ftzopen.h
│ │ │ │ └── rules.mk
│ │ │ ├── otvalid/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── otvalid.c
│ │ │ │ ├── otvalid.h
│ │ │ │ ├── otvbase.c
│ │ │ │ ├── otvcommn.c
│ │ │ │ ├── otvcommn.h
│ │ │ │ ├── otverror.h
│ │ │ │ ├── otvgdef.c
│ │ │ │ ├── otvgpos.c
│ │ │ │ ├── otvgpos.h
│ │ │ │ ├── otvgsub.c
│ │ │ │ ├── otvjstf.c
│ │ │ │ ├── otvmath.c
│ │ │ │ ├── otvmod.c
│ │ │ │ ├── otvmod.h
│ │ │ │ └── rules.mk
│ │ │ ├── pcf/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── README
│ │ │ │ ├── module.mk
│ │ │ │ ├── pcf.c
│ │ │ │ ├── pcf.h
│ │ │ │ ├── pcfdrivr.c
│ │ │ │ ├── pcfdrivr.h
│ │ │ │ ├── pcferror.h
│ │ │ │ ├── pcfread.c
│ │ │ │ ├── pcfread.h
│ │ │ │ ├── pcfutil.c
│ │ │ │ ├── pcfutil.h
│ │ │ │ └── rules.mk
│ │ │ ├── pfr/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── pfr.c
│ │ │ │ ├── pfrcmap.c
│ │ │ │ ├── pfrcmap.h
│ │ │ │ ├── pfrdrivr.c
│ │ │ │ ├── pfrdrivr.h
│ │ │ │ ├── pfrerror.h
│ │ │ │ ├── pfrgload.c
│ │ │ │ ├── pfrgload.h
│ │ │ │ ├── pfrload.c
│ │ │ │ ├── pfrload.h
│ │ │ │ ├── pfrobjs.c
│ │ │ │ ├── pfrobjs.h
│ │ │ │ ├── pfrsbit.c
│ │ │ │ ├── pfrsbit.h
│ │ │ │ ├── pfrtypes.h
│ │ │ │ └── rules.mk
│ │ │ ├── psaux/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── afmparse.c
│ │ │ │ ├── afmparse.h
│ │ │ │ ├── module.mk
│ │ │ │ ├── psaux.c
│ │ │ │ ├── psauxerr.h
│ │ │ │ ├── psauxmod.c
│ │ │ │ ├── psauxmod.h
│ │ │ │ ├── psconv.c
│ │ │ │ ├── psconv.h
│ │ │ │ ├── psobjs.c
│ │ │ │ ├── psobjs.h
│ │ │ │ ├── rules.mk
│ │ │ │ ├── t1cmap.c
│ │ │ │ ├── t1cmap.h
│ │ │ │ ├── t1decode.c
│ │ │ │ └── t1decode.h
│ │ │ ├── pshinter/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── pshalgo.c
│ │ │ │ ├── pshalgo.h
│ │ │ │ ├── pshglob.c
│ │ │ │ ├── pshglob.h
│ │ │ │ ├── pshinter.c
│ │ │ │ ├── pshmod.c
│ │ │ │ ├── pshmod.h
│ │ │ │ ├── pshnterr.h
│ │ │ │ ├── pshpic.c
│ │ │ │ ├── pshpic.h
│ │ │ │ ├── pshrec.c
│ │ │ │ ├── pshrec.h
│ │ │ │ └── rules.mk
│ │ │ ├── psnames/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── psmodule.c
│ │ │ │ ├── psmodule.h
│ │ │ │ ├── psnamerr.h
│ │ │ │ ├── psnames.c
│ │ │ │ ├── pspic.c
│ │ │ │ ├── pspic.h
│ │ │ │ ├── pstables.h
│ │ │ │ └── rules.mk
│ │ │ ├── raster/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── ftmisc.h
│ │ │ │ ├── ftraster.c
│ │ │ │ ├── ftraster.h
│ │ │ │ ├── ftrend1.c
│ │ │ │ ├── ftrend1.h
│ │ │ │ ├── module.mk
│ │ │ │ ├── raster.c
│ │ │ │ ├── rasterrs.h
│ │ │ │ ├── rastpic.c
│ │ │ │ ├── rastpic.h
│ │ │ │ └── rules.mk
│ │ │ ├── sfnt/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── rules.mk
│ │ │ │ ├── sfdriver.c
│ │ │ │ ├── sfdriver.h
│ │ │ │ ├── sferrors.h
│ │ │ │ ├── sfnt.c
│ │ │ │ ├── sfntpic.c
│ │ │ │ ├── sfntpic.h
│ │ │ │ ├── sfobjs.c
│ │ │ │ ├── sfobjs.h
│ │ │ │ ├── ttbdf.c
│ │ │ │ ├── ttbdf.h
│ │ │ │ ├── ttcmap.c
│ │ │ │ ├── ttcmap.h
│ │ │ │ ├── ttcmapc.h
│ │ │ │ ├── ttkern.c
│ │ │ │ ├── ttkern.h
│ │ │ │ ├── ttload.c
│ │ │ │ ├── ttload.h
│ │ │ │ ├── ttmtx.c
│ │ │ │ ├── ttmtx.h
│ │ │ │ ├── ttpost.c
│ │ │ │ ├── ttpost.h
│ │ │ │ ├── ttsbit.c
│ │ │ │ ├── ttsbit.h
│ │ │ │ └── ttsbit0.c
│ │ │ ├── smooth/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── ftgrays.c
│ │ │ │ ├── ftgrays.h
│ │ │ │ ├── ftsmerrs.h
│ │ │ │ ├── ftsmooth.c
│ │ │ │ ├── ftsmooth.h
│ │ │ │ ├── ftspic.c
│ │ │ │ ├── ftspic.h
│ │ │ │ ├── module.mk
│ │ │ │ ├── rules.mk
│ │ │ │ └── smooth.c
│ │ │ ├── tools/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── apinames.c
│ │ │ │ ├── chktrcmp.py
│ │ │ │ ├── cordic.py
│ │ │ │ ├── docmaker/
│ │ │ │ │ ├── content.py
│ │ │ │ │ ├── docbeauty.py
│ │ │ │ │ ├── docmaker.py
│ │ │ │ │ ├── formatter.py
│ │ │ │ │ ├── sources.py
│ │ │ │ │ ├── tohtml.py
│ │ │ │ │ └── utils.py
│ │ │ │ ├── ftrandom/
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── README
│ │ │ │ │ └── ftrandom.c
│ │ │ │ ├── glnames.py
│ │ │ │ ├── test_afm.c
│ │ │ │ ├── test_bbox.c
│ │ │ │ └── test_trig.c
│ │ │ ├── truetype/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── rules.mk
│ │ │ │ ├── truetype.c
│ │ │ │ ├── ttdriver.c
│ │ │ │ ├── ttdriver.h
│ │ │ │ ├── tterrors.h
│ │ │ │ ├── ttgload.c
│ │ │ │ ├── ttgload.h
│ │ │ │ ├── ttgxvar.c
│ │ │ │ ├── ttgxvar.h
│ │ │ │ ├── ttinterp.c
│ │ │ │ ├── ttinterp.h
│ │ │ │ ├── ttobjs.c
│ │ │ │ ├── ttobjs.h
│ │ │ │ ├── ttpic.c
│ │ │ │ ├── ttpic.h
│ │ │ │ ├── ttpload.c
│ │ │ │ ├── ttpload.h
│ │ │ │ ├── ttsubpix.c
│ │ │ │ └── ttsubpix.h
│ │ │ ├── type1/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── rules.mk
│ │ │ │ ├── t1afm.c
│ │ │ │ ├── t1afm.h
│ │ │ │ ├── t1driver.c
│ │ │ │ ├── t1driver.h
│ │ │ │ ├── t1errors.h
│ │ │ │ ├── t1gload.c
│ │ │ │ ├── t1gload.h
│ │ │ │ ├── t1load.c
│ │ │ │ ├── t1load.h
│ │ │ │ ├── t1objs.c
│ │ │ │ ├── t1objs.h
│ │ │ │ ├── t1parse.c
│ │ │ │ ├── t1parse.h
│ │ │ │ ├── t1tokens.h
│ │ │ │ └── type1.c
│ │ │ ├── type42/
│ │ │ │ ├── Jamfile
│ │ │ │ ├── module.mk
│ │ │ │ ├── rules.mk
│ │ │ │ ├── t42drivr.c
│ │ │ │ ├── t42drivr.h
│ │ │ │ ├── t42error.h
│ │ │ │ ├── t42objs.c
│ │ │ │ ├── t42objs.h
│ │ │ │ ├── t42parse.c
│ │ │ │ ├── t42parse.h
│ │ │ │ ├── t42types.h
│ │ │ │ └── type42.c
│ │ │ └── winfonts/
│ │ │ ├── Jamfile
│ │ │ ├── fnterrs.h
│ │ │ ├── module.mk
│ │ │ ├── rules.mk
│ │ │ ├── winfnt.c
│ │ │ └── winfnt.h
│ │ ├── libfreetype2/
│ │ │ ├── FTL.txt
│ │ │ ├── README.md
│ │ │ ├── include/
│ │ │ │ ├── freetype/
│ │ │ │ │ ├── config/
│ │ │ │ │ │ ├── ftconfig.h
│ │ │ │ │ │ ├── ftheader.h
│ │ │ │ │ │ ├── ftmodule.h
│ │ │ │ │ │ ├── ftoption.h
│ │ │ │ │ │ └── ftstdlib.h
│ │ │ │ │ ├── freetype.h
│ │ │ │ │ ├── ftadvanc.h
│ │ │ │ │ ├── ftbbox.h
│ │ │ │ │ ├── ftbdf.h
│ │ │ │ │ ├── ftbitmap.h
│ │ │ │ │ ├── ftcache.h
│ │ │ │ │ ├── ftchapters.h
│ │ │ │ │ ├── ftcid.h
│ │ │ │ │ ├── fterrdef.h
│ │ │ │ │ ├── fterrors.h
│ │ │ │ │ ├── ftgasp.h
│ │ │ │ │ ├── ftglyph.h
│ │ │ │ │ ├── ftgxval.h
│ │ │ │ │ ├── ftgzip.h
│ │ │ │ │ ├── ftimage.h
│ │ │ │ │ ├── ftincrem.h
│ │ │ │ │ ├── ftlcdfil.h
│ │ │ │ │ ├── ftlist.h
│ │ │ │ │ ├── ftlzw.h
│ │ │ │ │ ├── ftmac.h
│ │ │ │ │ ├── ftmm.h
│ │ │ │ │ ├── ftmodapi.h
│ │ │ │ │ ├── ftmoderr.h
│ │ │ │ │ ├── ftotval.h
│ │ │ │ │ ├── ftoutln.h
│ │ │ │ │ ├── ftpfr.h
│ │ │ │ │ ├── ftrender.h
│ │ │ │ │ ├── ftsizes.h
│ │ │ │ │ ├── ftsnames.h
│ │ │ │ │ ├── ftstroke.h
│ │ │ │ │ ├── ftsynth.h
│ │ │ │ │ ├── ftsystem.h
│ │ │ │ │ ├── fttrigon.h
│ │ │ │ │ ├── fttypes.h
│ │ │ │ │ ├── ftwinfnt.h
│ │ │ │ │ ├── ftxf86.h
│ │ │ │ │ ├── internal/
│ │ │ │ │ │ ├── autohint.h
│ │ │ │ │ │ ├── ftcalc.h
│ │ │ │ │ │ ├── ftdebug.h
│ │ │ │ │ │ ├── ftdriver.h
│ │ │ │ │ │ ├── ftgloadr.h
│ │ │ │ │ │ ├── ftmemory.h
│ │ │ │ │ │ ├── ftobjs.h
│ │ │ │ │ │ ├── ftpic.h
│ │ │ │ │ │ ├── ftrfork.h
│ │ │ │ │ │ ├── ftserv.h
│ │ │ │ │ │ ├── ftstream.h
│ │ │ │ │ │ ├── fttrace.h
│ │ │ │ │ │ ├── ftvalid.h
│ │ │ │ │ │ ├── internal.h
│ │ │ │ │ │ ├── pcftypes.h
│ │ │ │ │ │ ├── psaux.h
│ │ │ │ │ │ ├── pshints.h
│ │ │ │ │ │ ├── services/
│ │ │ │ │ │ │ ├── svbdf.h
│ │ │ │ │ │ │ ├── svcid.h
│ │ │ │ │ │ │ ├── svgldict.h
│ │ │ │ │ │ │ ├── svgxval.h
│ │ │ │ │ │ │ ├── svkern.h
│ │ │ │ │ │ │ ├── svmm.h
│ │ │ │ │ │ │ ├── svotval.h
│ │ │ │ │ │ │ ├── svpfr.h
│ │ │ │ │ │ │ ├── svpostnm.h
│ │ │ │ │ │ │ ├── svpscmap.h
│ │ │ │ │ │ │ ├── svpsinfo.h
│ │ │ │ │ │ │ ├── svsfnt.h
│ │ │ │ │ │ │ ├── svttcmap.h
│ │ │ │ │ │ │ ├── svtteng.h
│ │ │ │ │ │ │ ├── svttglyf.h
│ │ │ │ │ │ │ ├── svwinfnt.h
│ │ │ │ │ │ │ └── svxf86nm.h
│ │ │ │ │ │ ├── sfnt.h
│ │ │ │ │ │ ├── t1types.h
│ │ │ │ │ │ └── tttypes.h
│ │ │ │ │ ├── t1tables.h
│ │ │ │ │ ├── ttnameid.h
│ │ │ │ │ ├── tttables.h
│ │ │ │ │ ├── tttags.h
│ │ │ │ │ └── ttunpat.h
│ │ │ │ └── ft2build.h
│ │ │ └── jni/
│ │ │ ├── Android.mk
│ │ │ ├── Application.mk
│ │ │ ├── shared.mk
│ │ │ └── static.mk
│ │ ├── lua/
│ │ │ ├── lapi.c
│ │ │ ├── lapi.h
│ │ │ ├── lauxlib.c
│ │ │ ├── lauxlib.h
│ │ │ ├── lbaselib.c
│ │ │ ├── lbitlib.c
│ │ │ ├── lcode.c
│ │ │ ├── lcode.h
│ │ │ ├── lcorolib.c
│ │ │ ├── lctype.c
│ │ │ ├── lctype.h
│ │ │ ├── ldblib.c
│ │ │ ├── ldebug.c
│ │ │ ├── ldebug.h
│ │ │ ├── ldo.c
│ │ │ ├── ldo.h
│ │ │ ├── ldump.c
│ │ │ ├── lfunc.c
│ │ │ ├── lfunc.h
│ │ │ ├── lgc.c
│ │ │ ├── lgc.h
│ │ │ ├── linit.c
│ │ │ ├── liolib.c
│ │ │ ├── llex.c
│ │ │ ├── llex.h
│ │ │ ├── llimits.h
│ │ │ ├── lmathlib.c
│ │ │ ├── lmem.c
│ │ │ ├── lmem.h
│ │ │ ├── loadlib.c
│ │ │ ├── lobject.c
│ │ │ ├── lobject.h
│ │ │ ├── lopcodes.c
│ │ │ ├── lopcodes.h
│ │ │ ├── loslib.c
│ │ │ ├── lparser.c
│ │ │ ├── lparser.h
│ │ │ ├── lstate.c
│ │ │ ├── lstate.h
│ │ │ ├── lstring.c
│ │ │ ├── lstring.h
│ │ │ ├── lstrlib.c
│ │ │ ├── ltable.c
│ │ │ ├── ltable.h
│ │ │ ├── ltablib.c
│ │ │ ├── ltm.c
│ │ │ ├── ltm.h
│ │ │ ├── lua.h
│ │ │ ├── lua.hpp
│ │ │ ├── luaconf.h
│ │ │ ├── lualib.h
│ │ │ ├── lundump.c
│ │ │ ├── lundump.h
│ │ │ ├── lvm.c
│ │ │ ├── lvm.h
│ │ │ ├── lzio.c
│ │ │ └── lzio.h
│ │ ├── minizip/
│ │ │ ├── crypt.h
│ │ │ ├── ioapi.c
│ │ │ ├── ioapi.h
│ │ │ ├── mztools.c
│ │ │ ├── mztools.h
│ │ │ ├── unzip.c
│ │ │ └── unzip.h
│ │ ├── mono/
│ │ │ ├── cil/
│ │ │ │ └── opcode.def
│ │ │ ├── jit/
│ │ │ │ └── jit.h
│ │ │ ├── metadata/
│ │ │ │ ├── appdomain.h
│ │ │ │ ├── assembly.h
│ │ │ │ ├── attrdefs.h
│ │ │ │ ├── blob.h
│ │ │ │ ├── class.h
│ │ │ │ ├── debug-helpers.h
│ │ │ │ ├── debug-mono-symfile.h
│ │ │ │ ├── environment.h
│ │ │ │ ├── exception.h
│ │ │ │ ├── image.h
│ │ │ │ ├── loader.h
│ │ │ │ ├── metadata.h
│ │ │ │ ├── mono-config.h
│ │ │ │ ├── mono-debug.h
│ │ │ │ ├── mono-gc.h
│ │ │ │ ├── object.h
│ │ │ │ ├── opcodes.h
│ │ │ │ ├── profiler.h
│ │ │ │ ├── reflection.h
│ │ │ │ ├── row-indexes.h
│ │ │ │ ├── sgen-bridge.h
│ │ │ │ ├── threads.h
│ │ │ │ ├── tokentype.h
│ │ │ │ └── verify.h
│ │ │ └── utils/
│ │ │ ├── mono-dl-fallback.h
│ │ │ ├── mono-error.h
│ │ │ ├── mono-logger.h
│ │ │ └── mono-publib.h
│ │ ├── sha1/
│ │ │ ├── hash_sha1.c
│ │ │ └── hash_sha1.h
│ │ └── utf8_converter/
│ │ ├── utf8.c
│ │ └── utf8.h
│ ├── porting/
│ │ ├── Android/
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── GameEngine-android/
│ │ │ │ ├── .classpath
│ │ │ │ ├── .cproject
│ │ │ │ ├── .gitattributes
│ │ │ │ ├── .project
│ │ │ │ ├── .settings/
│ │ │ │ │ ├── org.eclipse.cdt.core.prefs
│ │ │ │ │ ├── org.eclipse.core.resources.prefs
│ │ │ │ │ └── org.eclipse.jdt.core.prefs
│ │ │ │ ├── AndroidManifest.xml
│ │ │ │ ├── build.gradle
│ │ │ │ ├── build.py
│ │ │ │ ├── gradle/
│ │ │ │ │ └── wrapper/
│ │ │ │ │ ├── gradle-wrapper.jar
│ │ │ │ │ └── gradle-wrapper.properties
│ │ │ │ ├── gradle.properties.forReleaseSigning
│ │ │ │ ├── gradlew
│ │ │ │ ├── gradlew.bat
│ │ │ │ ├── lint.xml
│ │ │ │ ├── proguard.cfg
│ │ │ │ ├── project.properties
│ │ │ │ └── res/
│ │ │ │ ├── layout/
│ │ │ │ │ ├── indicator.xml
│ │ │ │ │ ├── install.xml
│ │ │ │ │ └── main.xml
│ │ │ │ └── values/
│ │ │ │ └── strings.xml
│ │ │ ├── jni/
│ │ │ │ ├── Android/
│ │ │ │ │ ├── AndroidFileLocation.h
│ │ │ │ │ ├── CAndroidFont.cpp
│ │ │ │ │ ├── CAndroidFont.h
│ │ │ │ │ ├── CAndroidPathConv.cpp
│ │ │ │ │ ├── CAndroidPathConv.h
│ │ │ │ │ ├── CAndroidReadFileStream.cpp
│ │ │ │ │ ├── CAndroidReadFileStream.h
│ │ │ │ │ ├── CAndroidRequest.cpp
│ │ │ │ │ ├── CAndroidRequest.h
│ │ │ │ │ ├── CAndroidTmpFile.cpp
│ │ │ │ │ ├── CAndroidTmpFile.h
│ │ │ │ │ ├── CAndroidWidget.cpp
│ │ │ │ │ ├── CAndroidWidget.h
│ │ │ │ │ ├── CAndroidWriteFileStream.cpp
│ │ │ │ │ ├── CAndroidWriteFileStream.h
│ │ │ │ │ ├── CJNI.cpp
│ │ │ │ │ ├── CJNI.h
│ │ │ │ │ ├── CMediaPlayer.cpp
│ │ │ │ │ ├── CMediaPlayer.h
│ │ │ │ │ ├── CSockReadStream.cpp
│ │ │ │ │ ├── CSockReadStream.h
│ │ │ │ │ ├── CSockWriteStream.cpp
│ │ │ │ │ ├── CSockWriteStream.h
│ │ │ │ │ ├── GLcommon.h
│ │ │ │ │ ├── KLBOpenSLAudioPlayer.h
│ │ │ │ │ ├── KLBOpenSLEngine.cpp
│ │ │ │ │ ├── KLBOpenSLSoundAsset.cpp
│ │ │ │ │ ├── KLBOpenSLSoundAssetLoader.cpp
│ │ │ │ │ ├── KLBOpenSLSoundHandle.cpp
│ │ │ │ │ ├── KLBPlatformMetrics.cpp
│ │ │ │ │ ├── KLBPlatformMetrics.h
│ │ │ │ │ ├── PackageDefine.h
│ │ │ │ │ └── assert.cpp
│ │ │ │ ├── Android.mk
│ │ │ │ ├── Application.mk
│ │ │ │ ├── curl-7.29.0/
│ │ │ │ │ ├── armeabi/
│ │ │ │ │ │ └── libcurl.a
│ │ │ │ │ ├── include/
│ │ │ │ │ │ └── curl/
│ │ │ │ │ │ ├── curl.h
│ │ │ │ │ │ ├── curlbuild.h
│ │ │ │ │ │ ├── curlrules.h
│ │ │ │ │ │ ├── curlver.h
│ │ │ │ │ │ ├── easy.h
│ │ │ │ │ │ ├── mprintf.h
│ │ │ │ │ │ ├── multi.h
│ │ │ │ │ │ ├── stdcheaders.h
│ │ │ │ │ │ └── typecheck-gcc.h
│ │ │ │ │ └── x86/
│ │ │ │ │ └── libcurl.a
│ │ │ │ ├── luajit-2.0.1/
│ │ │ │ │ └── include/
│ │ │ │ │ ├── lauxlib.h
│ │ │ │ │ ├── lua.h
│ │ │ │ │ ├── lua.hpp
│ │ │ │ │ ├── luaconf.h
│ │ │ │ │ ├── luajit.h
│ │ │ │ │ └── lualib.h
│ │ │ │ └── proxy/
│ │ │ │ ├── jniproxy.cpp
│ │ │ │ └── klb_android_GameEngine_PFInterface.h
│ │ │ ├── lint.xml
│ │ │ ├── project.properties
│ │ │ ├── res/
│ │ │ │ ├── layout/
│ │ │ │ │ ├── indicator.xml
│ │ │ │ │ ├── install.xml
│ │ │ │ │ └── main.xml
│ │ │ │ └── values/
│ │ │ │ └── strings.xml
│ │ │ └── src/
│ │ │ ├── com/
│ │ │ │ └── android/
│ │ │ │ └── vending/
│ │ │ │ └── billing/
│ │ │ │ └── IInAppBillingService.aidl
│ │ │ └── klb/
│ │ │ └── android/
│ │ │ └── GameEngine/
│ │ │ ├── EditBoxItem.java
│ │ │ ├── FontManager.java
│ │ │ ├── GCMIntentService.java
│ │ │ ├── GLES20GameRenderer.java
│ │ │ ├── GameEngineActivity.java
│ │ │ ├── GameEngineApplication.java
│ │ │ ├── GameGLSurfaceView.java
│ │ │ ├── IndicaterItem.java
│ │ │ ├── MovieView.java
│ │ │ ├── MovieViewItem.java
│ │ │ ├── PFInterface.java
│ │ │ ├── RClassReference.java
│ │ │ ├── Typefaces.java
│ │ │ ├── WebViewItem.java
│ │ │ ├── billing/
│ │ │ │ ├── listener/
│ │ │ │ │ ├── IOnConsumeFinishedListener.java
│ │ │ │ │ ├── IOnIabPurchaseFinishedListener.java
│ │ │ │ │ ├── IOnIabSetupFinishedListener.java
│ │ │ │ │ └── IQueryInventoryFinishedListener.java
│ │ │ │ ├── manager/
│ │ │ │ │ └── BillingManager.java
│ │ │ │ └── util/
│ │ │ │ ├── Base64.java
│ │ │ │ ├── Base64DecoderException.java
│ │ │ │ ├── IabException.java
│ │ │ │ ├── IabHelper.java
│ │ │ │ ├── IabResult.java
│ │ │ │ ├── Inventory.java
│ │ │ │ ├── Purchase.java
│ │ │ │ └── SkuDetails.java
│ │ │ └── prngfix/
│ │ │ └── PRNGFixes.java
│ │ ├── FileDelete.cpp
│ │ ├── FileDelete.h
│ │ ├── FontRendering.cpp
│ │ ├── FontRendering.h
│ │ ├── OSX/
│ │ │ ├── Playground/
│ │ │ │ ├── AppDelegate.mm
│ │ │ │ ├── CSockReadStream.cpp
│ │ │ │ ├── CSockWriteStream.cpp
│ │ │ │ ├── CiOSAudio.mm
│ │ │ │ ├── CiOSAudioManager.mm
│ │ │ │ ├── CiOSMovieView.mm
│ │ │ │ ├── CiOSPathConv.mm
│ │ │ │ ├── CiOSPlatform.mm
│ │ │ │ ├── CiOSReadFileStream.cpp
│ │ │ │ ├── CiOSSysResource.mm
│ │ │ │ ├── CiOSTmpFile.cpp
│ │ │ │ ├── CiOSWebView.mm
│ │ │ │ ├── CiOSWidget.mm
│ │ │ │ ├── CiOSWriteFileStream.cpp
│ │ │ │ ├── EAGLView.mm
│ │ │ │ ├── NSData+Base64.m
│ │ │ │ ├── NSGLView.h
│ │ │ │ ├── NSGLView.mm
│ │ │ │ ├── OpenGLRenderer.h
│ │ │ │ ├── OpenGLRenderer.mm
│ │ │ │ ├── Playground-Info.plist
│ │ │ │ ├── Playground-Prefix.pch
│ │ │ │ ├── PlaygroundAppDelegate.h
│ │ │ │ ├── PlaygroundAppDelegate.mm
│ │ │ │ ├── ViewController.mm
│ │ │ │ ├── assert.mm
│ │ │ │ ├── en.lproj/
│ │ │ │ │ ├── Credits.rtf
│ │ │ │ │ ├── InfoPlist.strings
│ │ │ │ │ └── MainMenu.xib
│ │ │ │ ├── glUtil.h
│ │ │ │ ├── imageUtil.h
│ │ │ │ ├── imageUtil.m
│ │ │ │ ├── include/
│ │ │ │ │ ├── AppDelegate.h
│ │ │ │ │ ├── CSockReadStream.h
│ │ │ │ │ ├── CSockWriteStream.h
│ │ │ │ │ ├── CiOSAudio.h
│ │ │ │ │ ├── CiOSAudioManager.h
│ │ │ │ │ ├── CiOSMovieView.h
│ │ │ │ │ ├── CiOSPathConv.h
│ │ │ │ │ ├── CiOSPlatform.h
│ │ │ │ │ ├── CiOSReadFileStream.h
│ │ │ │ │ ├── CiOSSysResource.h
│ │ │ │ │ ├── CiOSTextView.h
│ │ │ │ │ ├── CiOSTmpFile.h
│ │ │ │ │ ├── CiOSWebView.h
│ │ │ │ │ ├── CiOSWidget.h
│ │ │ │ │ ├── CiOSWriteFileStream.h
│ │ │ │ │ ├── EAGLView.h
│ │ │ │ │ ├── GLcommon.h
│ │ │ │ │ ├── KLBPlatformMetrics.h
│ │ │ │ │ ├── NSData+Base64.h
│ │ │ │ │ ├── ViewController.h
│ │ │ │ │ └── iOSFileLocation.h
│ │ │ │ ├── main.m
│ │ │ │ ├── matrixUtil.c
│ │ │ │ ├── matrixUtil.h
│ │ │ │ ├── modelUtil.c
│ │ │ │ ├── modelUtil.h
│ │ │ │ ├── porting/
│ │ │ │ │ └── include/
│ │ │ │ │ └── KLBPlatformMetrics.h
│ │ │ │ ├── sourceUtil.c
│ │ │ │ ├── sourceUtil.h
│ │ │ │ ├── vectorUtil.c
│ │ │ │ └── vectorUtil.h
│ │ │ ├── Playground.xcodeproj/
│ │ │ │ └── project.pbxproj
│ │ │ ├── PlaygroundOSS/
│ │ │ │ ├── PlaygroundOSS-Info.plist
│ │ │ │ ├── PlaygroundOSS-Prefix.pch
│ │ │ │ └── en.lproj/
│ │ │ │ └── InfoPlist.strings
│ │ │ ├── PlaygroundOSSTests/
│ │ │ │ ├── PlaygroundOSSTests-Info.plist
│ │ │ │ ├── PlaygroundOSSTests.m
│ │ │ │ └── en.lproj/
│ │ │ │ └── InfoPlist.strings
│ │ │ ├── Shaders/
│ │ │ │ ├── character.fsh
│ │ │ │ ├── character.vsh
│ │ │ │ ├── reflect.fsh
│ │ │ │ └── reflect.vsh
│ │ │ ├── curl/
│ │ │ │ ├── include/
│ │ │ │ │ └── curl/
│ │ │ │ │ ├── curl.h
│ │ │ │ │ ├── curlbuild.h
│ │ │ │ │ ├── curlrules.h
│ │ │ │ │ ├── curlver.h
│ │ │ │ │ ├── easy.h
│ │ │ │ │ ├── mprintf.h
│ │ │ │ │ ├── multi.h
│ │ │ │ │ ├── stdcheaders.h
│ │ │ │ │ └── typecheck-gcc.h
│ │ │ │ └── lib/
│ │ │ │ ├── libcurl.a
│ │ │ │ ├── libcurl.la
│ │ │ │ └── pkgconfig/
│ │ │ │ └── libcurl.pc
│ │ │ ├── demon.model
│ │ │ └── glew/
│ │ │ └── include/
│ │ │ └── GL/
│ │ │ ├── glew.h
│ │ │ ├── glxew.h
│ │ │ └── wglew.h
│ │ ├── Win32/
│ │ │ ├── EngineStdReference.h
│ │ │ ├── EngineStdReferenceOSS.cpp
│ │ │ ├── GameEngine.h
│ │ │ ├── GameLibraryWin32.cpp
│ │ │ ├── KHR/
│ │ │ │ └── khrplatform.h
│ │ │ ├── Lame/
│ │ │ │ ├── BladeMP3EncDLL.h
│ │ │ │ ├── lame.h
│ │ │ │ ├── libmp3lame.exp
│ │ │ │ └── libmp3lame.lib
│ │ │ ├── OSSGameLibraryWin32.sln
│ │ │ ├── OSSGameLibraryWin32.vcxproj
│ │ │ ├── OSSGameLibraryWin32.vcxproj.filters
│ │ │ ├── Output/
│ │ │ │ └── Debug_CSharp/
│ │ │ │ ├── libs/
│ │ │ │ │ └── lib/
│ │ │ │ │ └── README.txt
│ │ │ │ ├── mono.def
│ │ │ │ ├── mono.exp
│ │ │ │ └── mono.lib
│ │ │ ├── Platform/
│ │ │ │ ├── CSockReadStream.cpp
│ │ │ │ ├── CSockReadStream.h
│ │ │ │ ├── CSockWriteStream.cpp
│ │ │ │ ├── CSockWriteStream.h
│ │ │ │ ├── CWin32Audio.cpp
│ │ │ │ ├── CWin32Audio.h
│ │ │ │ ├── CWin32HttpStream.cpp
│ │ │ │ ├── CWin32HttpStream.h
│ │ │ │ ├── CWin32KeyChain.cpp
│ │ │ │ ├── CWin32KeyChain.h
│ │ │ │ ├── CWin32MP3.cpp
│ │ │ │ ├── CWin32MP3.h
│ │ │ │ ├── CWin32PathConv.cpp
│ │ │ │ ├── CWin32PathConv.h
│ │ │ │ ├── CWin32Platform.cpp
│ │ │ │ ├── CWin32Platform.h
│ │ │ │ ├── CWin32ReadFileStream.cpp
│ │ │ │ ├── CWin32ReadFileStream.h
│ │ │ │ ├── CWin32TmpFile.cpp
│ │ │ │ ├── CWin32TmpFile.h
│ │ │ │ ├── CWin32Widget.cpp
│ │ │ │ ├── CWin32Widget.h
│ │ │ │ ├── CWin32WriteFileStream.cpp
│ │ │ │ ├── CWin32WriteFileStream.h
│ │ │ │ ├── KLBPlatformMetrics.h
│ │ │ │ ├── Win32FileLocation.h
│ │ │ │ ├── glew.h
│ │ │ │ ├── glext.h
│ │ │ │ ├── glut.h
│ │ │ │ ├── glxew.h
│ │ │ │ ├── libs/
│ │ │ │ │ ├── glew32.lib
│ │ │ │ │ ├── glew32mx.lib
│ │ │ │ │ ├── glew32mxs.lib
│ │ │ │ │ ├── glew32s.lib
│ │ │ │ │ ├── glut.lib
│ │ │ │ │ └── glut32.lib
│ │ │ │ └── wglew.h
│ │ │ ├── SampleProject/
│ │ │ │ ├── SampleProject.cpp
│ │ │ │ ├── SampleProject.vcxproj
│ │ │ │ └── SampleProject.vcxproj.filters
│ │ │ ├── assert.c
│ │ │ ├── directx/
│ │ │ │ └── dxguid.lib
│ │ │ ├── openssl/
│ │ │ │ ├── include/
│ │ │ │ │ └── openssl/
│ │ │ │ │ ├── aes.h
│ │ │ │ │ ├── applink.c
│ │ │ │ │ ├── asn1.h
│ │ │ │ │ ├── asn1_mac.h
│ │ │ │ │ ├── asn1t.h
│ │ │ │ │ ├── bio.h
│ │ │ │ │ ├── blowfish.h
│ │ │ │ │ ├── bn.h
│ │ │ │ │ ├── buffer.h
│ │ │ │ │ ├── camellia.h
│ │ │ │ │ ├── cast.h
│ │ │ │ │ ├── cmac.h
│ │ │ │ │ ├── cms.h
│ │ │ │ │ ├── comp.h
│ │ │ │ │ ├── conf.h
│ │ │ │ │ ├── conf_api.h
│ │ │ │ │ ├── crypto.h
│ │ │ │ │ ├── des.h
│ │ │ │ │ ├── des_old.h
│ │ │ │ │ ├── dh.h
│ │ │ │ │ ├── dsa.h
│ │ │ │ │ ├── dso.h
│ │ │ │ │ ├── dtls1.h
│ │ │ │ │ ├── e_os2.h
│ │ │ │ │ ├── ebcdic.h
│ │ │ │ │ ├── ec.h
│ │ │ │ │ ├── ecdh.h
│ │ │ │ │ ├── ecdsa.h
│ │ │ │ │ ├── engine.h
│ │ │ │ │ ├── err.h
│ │ │ │ │ ├── evp.h
│ │ │ │ │ ├── hmac.h
│ │ │ │ │ ├── idea.h
│ │ │ │ │ ├── krb5_asn.h
│ │ │ │ │ ├── kssl.h
│ │ │ │ │ ├── lhash.h
│ │ │ │ │ ├── md4.h
│ │ │ │ │ ├── md5.h
│ │ │ │ │ ├── mdc2.h
│ │ │ │ │ ├── modes.h
│ │ │ │ │ ├── obj_mac.h
│ │ │ │ │ ├── objects.h
│ │ │ │ │ ├── ocsp.h
│ │ │ │ │ ├── opensslconf.h
│ │ │ │ │ ├── opensslv.h
│ │ │ │ │ ├── ossl_typ.h
│ │ │ │ │ ├── pem.h
│ │ │ │ │ ├── pem2.h
│ │ │ │ │ ├── pkcs12.h
│ │ │ │ │ ├── pkcs7.h
│ │ │ │ │ ├── pqueue.h
│ │ │ │ │ ├── rand.h
│ │ │ │ │ ├── rc2.h
│ │ │ │ │ ├── rc4.h
│ │ │ │ │ ├── ripemd.h
│ │ │ │ │ ├── rsa.h
│ │ │ │ │ ├── safestack.h
│ │ │ │ │ ├── seed.h
│ │ │ │ │ ├── sha.h
│ │ │ │ │ ├── srp.h
│ │ │ │ │ ├── srtp.h
│ │ │ │ │ ├── ssl.h
│ │ │ │ │ ├── ssl2.h
│ │ │ │ │ ├── ssl23.h
│ │ │ │ │ ├── ssl3.h
│ │ │ │ │ ├── stack.h
│ │ │ │ │ ├── symhacks.h
│ │ │ │ │ ├── tls1.h
│ │ │ │ │ ├── ts.h
│ │ │ │ │ ├── txt_db.h
│ │ │ │ │ ├── ui.h
│ │ │ │ │ ├── ui_compat.h
│ │ │ │ │ ├── whrlpool.h
│ │ │ │ │ ├── x509.h
│ │ │ │ │ ├── x509_vfy.h
│ │ │ │ │ └── x509v3.h
│ │ │ │ ├── lib/
│ │ │ │ │ ├── libeay32.lib
│ │ │ │ │ └── ssleay32.lib
│ │ │ │ └── ssl/
│ │ │ │ └── openssl.cnf
│ │ │ ├── pure-Lua/
│ │ │ │ ├── lua52.exp
│ │ │ │ └── lua52.lib
│ │ │ ├── res.rc
│ │ │ ├── stdafx.cpp
│ │ │ ├── stdafx.h
│ │ │ ├── targetver.h
│ │ │ └── zlib/
│ │ │ ├── include/
│ │ │ │ ├── zconf.h
│ │ │ │ └── zlib.h
│ │ │ ├── zdll.lib
│ │ │ └── zlib.lib
│ │ ├── dirent.c
│ │ ├── dirent.h
│ │ └── iOS/
│ │ ├── AppDelegate.mm
│ │ ├── CSockReadStream.cpp
│ │ ├── CSockWriteStream.cpp
│ │ ├── CiOSAudio.mm
│ │ ├── CiOSAudioManager.mm
│ │ ├── CiOSHttpStream.h
│ │ ├── CiOSHttpStream.mm
│ │ ├── CiOSMovieView.mm
│ │ ├── CiOSPathConv.mm
│ │ ├── CiOSPlatform.mm
│ │ ├── CiOSReadFileStream.cpp
│ │ ├── CiOSSysResource.mm
│ │ ├── CiOSTextView.mm
│ │ ├── CiOSTmpFile.cpp
│ │ ├── CiOSWidget.mm
│ │ ├── CiOSWriteFileStream.cpp
│ │ ├── EAGLView.mm
│ │ ├── NSData+Base64.m
│ │ ├── ViewController.mm
│ │ ├── assert.mm
│ │ ├── curl/
│ │ │ ├── ios-appstore/
│ │ │ │ ├── include/
│ │ │ │ │ ├── curl.h
│ │ │ │ │ ├── curlbuild.h
│ │ │ │ │ ├── curlrules.h
│ │ │ │ │ ├── curlver.h
│ │ │ │ │ ├── easy.h
│ │ │ │ │ ├── mprintf.h
│ │ │ │ │ ├── multi.h
│ │ │ │ │ ├── stdcheaders.h
│ │ │ │ │ └── typecheck-gcc.h
│ │ │ │ └── lib/
│ │ │ │ └── libcurl.a
│ │ │ └── ios-dev/
│ │ │ ├── include/
│ │ │ │ ├── curl.h
│ │ │ │ ├── curlbuild.h
│ │ │ │ ├── curlrules.h
│ │ │ │ ├── curlver.h
│ │ │ │ ├── easy.h
│ │ │ │ ├── mprintf.h
│ │ │ │ ├── multi.h
│ │ │ │ ├── stdcheaders.h
│ │ │ │ └── typecheck-gcc.h
│ │ │ └── lib/
│ │ │ └── libcurl.a
│ │ └── include/
│ │ ├── AppDelegate.h
│ │ ├── CSockReadStream.h
│ │ ├── CSockWriteStream.h
│ │ ├── CiOSAudio.h
│ │ ├── CiOSAudioManager.h
│ │ ├── CiOSMovieView.h
│ │ ├── CiOSPathConv.h
│ │ ├── CiOSPlatform.h
│ │ ├── CiOSReadFileStream.h
│ │ ├── CiOSSysResource.h
│ │ ├── CiOSTextView.h
│ │ ├── CiOSTmpFile.h
│ │ ├── CiOSWebView.h
│ │ ├── CiOSWebView.mm
│ │ ├── CiOSWidget.h
│ │ ├── CiOSWriteFileStream.h
│ │ ├── EAGLView.h
│ │ ├── GLcommon.h
│ │ ├── KLBPlatformMetrics.h
│ │ ├── NSData+Base64.h
│ │ ├── ViewController.h
│ │ └── iOSFileLocation.h
│ ├── prebuilt/
│ │ └── OSX/
│ │ └── PlaygroundOSS.framework/
│ │ ├── Headers/
│ │ │ ├── AppDelegate.h
│ │ │ ├── ArrayAllocator.h
│ │ │ ├── AudioAsset.h
│ │ │ ├── BaseType.h
│ │ │ ├── CKLBAction.h
│ │ │ ├── CKLBActivityIndicatorNode.h
│ │ │ ├── CKLBAppProperty.h
│ │ │ ├── CKLBAsset.h
│ │ │ ├── CKLBAsyncFilecopy.h
│ │ │ ├── CKLBAsyncLoader.h
│ │ │ ├── CKLBBinArray.h
│ │ │ ├── CKLBCanvasSprite.h
│ │ │ ├── CKLBDataHandler.h
│ │ │ ├── CKLBDatabase.h
│ │ │ ├── CKLBDebugMenu.h
│ │ │ ├── CKLBDebugger.h
│ │ │ ├── CKLBDeviceKeyEvent.h
│ │ │ ├── CKLBDragCallbackIF.h
│ │ │ ├── CKLBDrawTask.h
│ │ │ ├── CKLBFormGroup.h
│ │ │ ├── CKLBFormIF.h
│ │ │ ├── CKLBGameApplication.h
│ │ │ ├── CKLBGenericTask.h
│ │ │ ├── CKLBHTTPInterface.h
│ │ │ ├── CKLBIntervalTimer.h
│ │ │ ├── CKLBJsonItem.h
│ │ │ ├── CKLBLabelNode.h
│ │ │ ├── CKLBLanguageDatabase.h
│ │ │ ├── CKLBLibRegistrator.h
│ │ │ ├── CKLBLifeCtrlTask.h
│ │ │ ├── CKLBLuaConst.h
│ │ │ ├── CKLBLuaDB.h
│ │ │ ├── CKLBLuaEnv.h
│ │ │ ├── CKLBLuaLibAPP.h
│ │ │ ├── CKLBLuaLibASSET.h
│ │ │ ├── CKLBLuaLibBIN.h
│ │ │ ├── CKLBLuaLibCONV.h
│ │ │ ├── CKLBLuaLibDATA.h
│ │ │ ├── CKLBLuaLibDB.h
│ │ │ ├── CKLBLuaLibDEBUG.h
│ │ │ ├── CKLBLuaLibENG.h
│ │ │ ├── CKLBLuaLibFONT.h
│ │ │ ├── CKLBLuaLibGL.h
│ │ │ ├── CKLBLuaLibHASH.h
│ │ │ ├── CKLBLuaLibKEY.h
│ │ │ ├── CKLBLuaLibLANG.h
│ │ │ ├── CKLBLuaLibMatrix.h
│ │ │ ├── CKLBLuaLibRES.h
│ │ │ ├── CKLBLuaLibSOUND.h
│ │ │ ├── CKLBLuaLibTASK.h
│ │ │ ├── CKLBLuaLibUI.h
│ │ │ ├── CKLBLuaPropTask.h
│ │ │ ├── CKLBLuaScript.h
│ │ │ ├── CKLBLuaTask.h
│ │ │ ├── CKLBModalStack.h
│ │ │ ├── CKLBMovieNode.h
│ │ │ ├── CKLBNetAPI.h
│ │ │ ├── CKLBNetAPIKeyChain.h
│ │ │ ├── CKLBNode.h
│ │ │ ├── CKLBNodeAnimPack.h
│ │ │ ├── CKLBNodeVirtualDocument.h
│ │ │ ├── CKLBOSCtrlEvent.h
│ │ │ ├── CKLBObject.h
│ │ │ ├── CKLBPauseCtrl.h
│ │ │ ├── CKLBPropertyBag.h
│ │ │ ├── CKLBRendering.h
│ │ │ ├── CKLBSWFPlayer.h
│ │ │ ├── CKLBScoreNode.h
│ │ │ ├── CKLBScrMgrDefault.h
│ │ │ ├── CKLBScrMgrPage.h
│ │ │ ├── CKLBScrMgrSolid.h
│ │ │ ├── CKLBScriptEnv.h
│ │ │ ├── CKLBScrollBarIF.h
│ │ │ ├── CKLBSplineNode.h
│ │ │ ├── CKLBSprite3D.h
│ │ │ ├── CKLBStoreService.h
│ │ │ ├── CKLBTask.h
│ │ │ ├── CKLBTextInputNode.h
│ │ │ ├── CKLBTextTempBuffer.h
│ │ │ ├── CKLBTexturePacker.h
│ │ │ ├── CKLBTouchEventUI.h
│ │ │ ├── CKLBTouchPad.h
│ │ │ ├── CKLBUIActivityIndicator.h
│ │ │ ├── CKLBUICanvas.h
│ │ │ ├── CKLBUIClip.h
│ │ │ ├── CKLBUIControl.h
│ │ │ ├── CKLBUIDebugItem.h
│ │ │ ├── CKLBUIDragIcon.h
│ │ │ ├── CKLBUIForm.h
│ │ │ ├── CKLBUIFreeVertItem.h
│ │ │ ├── CKLBUIGroup.h
│ │ │ ├── CKLBUILabel.h
│ │ │ ├── CKLBUIList.h
│ │ │ ├── CKLBUIMoviePlayer.h
│ │ │ ├── CKLBUIMultiImgItem.h
│ │ │ ├── CKLBUIPieChart.h
│ │ │ ├── CKLBUIPolyline.h
│ │ │ ├── CKLBUIProgressBar.h
│ │ │ ├── CKLBUIRubberBand.h
│ │ │ ├── CKLBUISWFPlayer.h
│ │ │ ├── CKLBUIScale9.h
│ │ │ ├── CKLBUIScore.h
│ │ │ ├── CKLBUIScrollBar.h
│ │ │ ├── CKLBUISimpleItem.h
│ │ │ ├── CKLBUISystem.h
│ │ │ ├── CKLBUITask.h
│ │ │ ├── CKLBUITextInput.h
│ │ │ ├── CKLBUITouchPad.h
│ │ │ ├── CKLBUIVariableItem.h
│ │ │ ├── CKLBUIVirtualDoc.h
│ │ │ ├── CKLBUIWebArea.h
│ │ │ ├── CKLBUpdate.h
│ │ │ ├── CKLBUtility.h
│ │ │ ├── CKLBWebViewNode.h
│ │ │ ├── CLuaState.h
│ │ │ ├── CPFInterface.h
│ │ │ ├── CSampleProjectEntrance.h
│ │ │ ├── CSockReadStream.h
│ │ │ ├── CSockWriteStream.h
│ │ │ ├── CSoundAnalysis.h
│ │ │ ├── CSoundAnalysisMP3.h
│ │ │ ├── CUnZip.h
│ │ │ ├── CiOSAudio.h
│ │ │ ├── CiOSAudioManager.h
│ │ │ ├── CiOSMovieView.h
│ │ │ ├── CiOSPathConv.h
│ │ │ ├── CiOSPlatform.h
│ │ │ ├── CiOSReadFileStream.h
│ │ │ ├── CiOSSysResource.h
│ │ │ ├── CiOSTextView.h
│ │ │ ├── CiOSTmpFile.h
│ │ │ ├── CiOSWebView.h
│ │ │ ├── CiOSWidget.h
│ │ │ ├── CiOSWriteFileStream.h
│ │ │ ├── CompositeManagement.h
│ │ │ ├── DataSet.h
│ │ │ ├── DataSet_JSonDB.h
│ │ │ ├── DebugAlloc.h
│ │ │ ├── DebugTracker.h
│ │ │ ├── Dictionnary.h
│ │ │ ├── EAGLView.h
│ │ │ ├── FileDelete.h
│ │ │ ├── FileSystem.h
│ │ │ ├── FontRendering.h
│ │ │ ├── GLcommon.h
│ │ │ ├── ILuaFuncLib.h
│ │ │ ├── IMgrEntry.h
│ │ │ ├── ITmpFile.h
│ │ │ ├── KLBPlatformMetrics.h
│ │ │ ├── KLBPlatformMetricsCommon.h
│ │ │ ├── Message.h
│ │ │ ├── MultithreadedNetwork.h
│ │ │ ├── NSData+Base64.h
│ │ │ ├── NSGLView.h
│ │ │ ├── NodeAnimationAsset.h
│ │ │ ├── OSWidget.h
│ │ │ ├── OpenGLRenderer.h
│ │ │ ├── RenderingFramework.h
│ │ │ ├── TextureManagement.h
│ │ │ ├── ViewController.h
│ │ │ ├── assert_klb.h
│ │ │ ├── encryptFile.h
│ │ │ ├── glUtil.h
│ │ │ ├── glWrapper.h
│ │ │ ├── iOSFileLocation.h
│ │ │ ├── imageUtil.h
│ │ │ ├── klb_vararg.h
│ │ │ ├── matrixUtil.h
│ │ │ ├── mem.h
│ │ │ ├── modelUtil.h
│ │ │ ├── sourceUtil.h
│ │ │ └── vectorUtil.h
│ │ ├── PlaygroundOSS
│ │ └── Resources/
│ │ ├── Info.plist
│ │ ├── Playground-Info.plist
│ │ └── en.lproj/
│ │ └── MainMenu.nib
│ └── source/
│ ├── Animation/
│ │ ├── CKLBNodeVirtualDocument.cpp
│ │ ├── CKLBNodeVirtualDocument.h
│ │ ├── CKLBSWFPlayer.cpp
│ │ ├── CKLBSWFPlayer.h
│ │ ├── CKLBScoreNode.cpp
│ │ ├── CKLBScoreNode.h
│ │ ├── CKLBSplineNode.cpp
│ │ ├── CKLBSplineNode.h
│ │ └── CKLBSystem.cpp
│ ├── Assets/
│ │ ├── AudioAsset.cpp
│ │ ├── AudioAsset.h
│ │ ├── CKLBAsset.h
│ │ ├── CKLBAssetManager.cpp
│ │ ├── CKLBPropertyBag.cpp
│ │ ├── CKLBPropertyBag.h
│ │ ├── CKLBTexturePacker.cpp
│ │ ├── CKLBTexturePacker.h
│ │ ├── CompositeManagement.cpp
│ │ ├── CompositeManagement.h
│ │ ├── NodeAnimationAsset.cpp
│ │ ├── NodeAnimationAsset.h
│ │ ├── TextureManagement.cpp
│ │ └── TextureManagement.h
│ ├── Core/
│ │ ├── ArrayAllocator.h
│ │ ├── CKLBAction.h
│ │ ├── CKLBAppProperty.cpp
│ │ ├── CKLBAppProperty.h
│ │ ├── CKLBAsyncFilecopy.cpp
│ │ ├── CKLBAsyncFilecopy.h
│ │ ├── CKLBAsyncLoader.cpp
│ │ ├── CKLBAsyncLoader.h
│ │ ├── CKLBBinArray.cpp
│ │ ├── CKLBBinArray.h
│ │ ├── CKLBContext.cpp
│ │ ├── CKLBDataHandler.cpp
│ │ ├── CKLBDataHandler.h
│ │ ├── CKLBDebugger.cpp
│ │ ├── CKLBDebugger.h
│ │ ├── CKLBGameApplication.cpp
│ │ ├── CKLBGameApplication.h
│ │ ├── CKLBGameApplicationDebugModule.cpp
│ │ ├── CKLBGenericTask.cpp
│ │ ├── CKLBGenericTask.h
│ │ ├── CKLBIntervalTimer.cpp
│ │ ├── CKLBIntervalTimer.h
│ │ ├── CKLBLibRegistrator.cpp
│ │ ├── CKLBLibRegistrator.h
│ │ ├── CKLBLifeCtrlTask.cpp
│ │ ├── CKLBLifeCtrlTask.h
│ │ ├── CKLBLuaEnv.cpp
│ │ ├── CKLBLuaEnv.h
│ │ ├── CKLBLuaPropTask.cpp
│ │ ├── CKLBLuaPropTask.h
│ │ ├── CKLBLuaTask.cpp
│ │ ├── CKLBLuaTask.h
│ │ ├── CKLBObject.cpp
│ │ ├── CKLBObject.h
│ │ ├── CKLBPauseCtrl.cpp
│ │ ├── CKLBPauseCtrl.h
│ │ ├── CKLBScriptEnv.h
│ │ ├── CKLBStream.cpp
│ │ ├── CKLBTask.cpp
│ │ ├── CKLBTask.h
│ │ ├── CKLBTextTempBuffer.cpp
│ │ ├── CKLBTextTempBuffer.h
│ │ ├── CKLBUITask.cpp
│ │ ├── CKLBUITask.h
│ │ ├── CKLBUtility.cpp
│ │ ├── CKLBUtility.h
│ │ ├── CLuaState.cpp
│ │ ├── CLuaState.h
│ │ ├── CPFInterface.cpp
│ │ ├── DebugAlloc.cpp
│ │ ├── DebugAlloc.h
│ │ ├── DebugTracker.cpp
│ │ ├── DebugTracker.h
│ │ ├── Dictionnary.cpp
│ │ ├── Dictionnary.h
│ │ ├── ITmpFile.cpp
│ │ ├── Message.h
│ │ └── encryptFile.cpp
│ ├── Database/
│ │ ├── CKLBDatabase.cpp
│ │ ├── CKLBDatabase.h
│ │ ├── CKLBLanguageDatabase.cpp
│ │ ├── CKLBLanguageDatabase.h
│ │ ├── CKLBLuaDB.cpp
│ │ ├── CKLBLuaDB.h
│ │ ├── DataSet.h
│ │ ├── DataSet_JSonDB.cpp
│ │ └── DataSet_JSonDB.h
│ ├── HTTP/
│ │ ├── CKLBHTTPInterface.cpp
│ │ ├── CKLBHTTPInterface.h
│ │ ├── CKLBJsonItem.cpp
│ │ ├── CKLBJsonItem.h
│ │ ├── CKLBNetAPI.cpp
│ │ ├── CKLBNetAPI.h
│ │ ├── CKLBNetAPIKeyChain.cpp
│ │ ├── CKLBNetAPIKeyChain.h
│ │ ├── CKLBStoreService.cpp
│ │ ├── CKLBStoreService.h
│ │ ├── CKLBUpdate.cpp
│ │ ├── CKLBUpdate.h
│ │ ├── CUnZip.cpp
│ │ ├── CUnZip.h
│ │ ├── MultithreadedNetwork.cpp
│ │ └── MultithreadedNetwork.h
│ ├── LuaLib/
│ │ ├── CKLBLuaConst.cpp
│ │ ├── CKLBLuaConst.h
│ │ ├── CKLBLuaLibAPP.cpp
│ │ ├── CKLBLuaLibAPP.h
│ │ ├── CKLBLuaLibASSET.cpp
│ │ ├── CKLBLuaLibASSET.h
│ │ ├── CKLBLuaLibBIN.cpp
│ │ ├── CKLBLuaLibBIN.h
│ │ ├── CKLBLuaLibCONV.cpp
│ │ ├── CKLBLuaLibCONV.h
│ │ ├── CKLBLuaLibDATA.cpp
│ │ ├── CKLBLuaLibDATA.h
│ │ ├── CKLBLuaLibDB.cpp
│ │ ├── CKLBLuaLibDB.h
│ │ ├── CKLBLuaLibDEBUG.cpp
│ │ ├── CKLBLuaLibDEBUG.h
│ │ ├── CKLBLuaLibENG.cpp
│ │ ├── CKLBLuaLibENG.h
│ │ ├── CKLBLuaLibFONT.cpp
│ │ ├── CKLBLuaLibFONT.h
│ │ ├── CKLBLuaLibGL.cpp
│ │ ├── CKLBLuaLibGL.h
│ │ ├── CKLBLuaLibHASH.cpp
│ │ ├── CKLBLuaLibHASH.h
│ │ ├── CKLBLuaLibKEY.cpp
│ │ ├── CKLBLuaLibKEY.h
│ │ ├── CKLBLuaLibLANG.cpp
│ │ ├── CKLBLuaLibLANG.h
│ │ ├── CKLBLuaLibMatrix.cpp
│ │ ├── CKLBLuaLibMatrix.h
│ │ ├── CKLBLuaLibRES.cpp
│ │ ├── CKLBLuaLibRES.h
│ │ ├── CKLBLuaLibSOUND.cpp
│ │ ├── CKLBLuaLibSOUND.h
│ │ ├── CKLBLuaLibTASK.cpp
│ │ ├── CKLBLuaLibTASK.h
│ │ ├── CKLBLuaLibUI.cpp
│ │ ├── CKLBLuaLibUI.h
│ │ ├── ILuaFuncLib.cpp
│ │ └── ILuaFuncLib.h
│ ├── Rendering/
│ │ ├── CBuffer.cpp
│ │ ├── CFrame.cpp
│ │ ├── CImageBuffer.cpp
│ │ ├── CIndexBuffer.cpp
│ │ ├── CKLBCanvasSprite.cpp
│ │ ├── CKLBCanvasSprite.h
│ │ ├── CKLBRendering.h
│ │ ├── CKLBRenderingManager.cpp
│ │ ├── CKLBSprite3D.cpp
│ │ ├── CKLBSprite3D.h
│ │ ├── CRenderingManager.cpp
│ │ ├── CRenderingManager_GL1.cpp
│ │ ├── CRenderingManager_GL2.cpp
│ │ ├── CShaderSet.cpp
│ │ ├── CShaderSetInstance.cpp
│ │ ├── CTexture.cpp
│ │ ├── CTextureBase.cpp
│ │ ├── CTextureUsage.cpp
│ │ ├── UTF8Parse.h
│ │ ├── UTF8Parser.c
│ │ ├── glWrapper.cpp
│ │ ├── glWrapper.h
│ │ └── shaderSource.inl
│ ├── SceneGraph/
│ │ ├── CKLBNode.cpp
│ │ └── CKLBNode.h
│ ├── Scripting/
│ │ ├── CKLBGCTask.cpp
│ │ ├── CKLBGCTask.h
│ │ ├── CKLBScriptEnv_forCSharp.cpp
│ │ ├── CKLBScriptEnv_forCpp.cpp
│ │ ├── CKLBScriptEnv_forLUA.cpp
│ │ ├── CallbackDef.h
│ │ ├── CallbackDef.inl
│ │ ├── ExportListC_Likefunction.cpp
│ │ └── ExportListC_Likefunction.h
│ ├── Sound/
│ │ ├── CSoundAnalysis.cpp
│ │ ├── CSoundAnalysisMP3.cpp
│ │ └── CSoundAnalysisMP3.h
│ ├── SystemTask/
│ │ ├── CKLBDebugMenu.cpp
│ │ ├── CKLBDebugMenu.h
│ │ ├── CKLBDeviceKeyEvent.cpp
│ │ ├── CKLBDeviceKeyEvent.h
│ │ ├── CKLBDrawTask.cpp
│ │ ├── CKLBDrawTask.h
│ │ ├── CKLBLuaScript.cpp
│ │ ├── CKLBLuaScript.h
│ │ ├── CKLBOSCtrlEvent.cpp
│ │ ├── CKLBOSCtrlEvent.h
│ │ ├── CKLBTouchEventUI.cpp
│ │ ├── CKLBTouchEventUI.h
│ │ ├── CKLBTouchPad.cpp
│ │ └── CKLBTouchPad.h
│ ├── UISystem/
│ │ ├── CKLBActivityIndicatorNode.cpp
│ │ ├── CKLBActivityIndicatorNode.h
│ │ ├── CKLBDragCallbackIF.cpp
│ │ ├── CKLBDragCallbackIF.h
│ │ ├── CKLBFormGroup.cpp
│ │ ├── CKLBFormGroup.h
│ │ ├── CKLBFormIF.cpp
│ │ ├── CKLBFormIF.h
│ │ ├── CKLBLabelNode.cpp
│ │ ├── CKLBLabelNode.h
│ │ ├── CKLBModalStack.cpp
│ │ ├── CKLBModalStack.h
│ │ ├── CKLBMovieNode.cpp
│ │ ├── CKLBMovieNode.h
│ │ ├── CKLBNodeAnimPack.cpp
│ │ ├── CKLBNodeAnimPack.h
│ │ ├── CKLBScrMgrDefault.cpp
│ │ ├── CKLBScrMgrDefault.h
│ │ ├── CKLBScrMgrPage.cpp
│ │ ├── CKLBScrMgrPage.h
│ │ ├── CKLBScrMgrSolid.cpp
│ │ ├── CKLBScrMgrSolid.h
│ │ ├── CKLBScrollBarIF.cpp
│ │ ├── CKLBScrollBarIF.h
│ │ ├── CKLBTextInputNode.cpp
│ │ ├── CKLBTextInputNode.h
│ │ ├── CKLBUIActivityIndicator.cpp
│ │ ├── CKLBUIActivityIndicator.h
│ │ ├── CKLBUIButton.cpp
│ │ ├── CKLBUIButton.h
│ │ ├── CKLBUICanvas.cpp
│ │ ├── CKLBUICanvas.h
│ │ ├── CKLBUIClip.cpp
│ │ ├── CKLBUIClip.h
│ │ ├── CKLBUIControl.cpp
│ │ ├── CKLBUIControl.h
│ │ ├── CKLBUIDebugItem.cpp
│ │ ├── CKLBUIDebugItem.h
│ │ ├── CKLBUIDragIcon.cpp
│ │ ├── CKLBUIDragIcon.h
│ │ ├── CKLBUIForm.cpp
│ │ ├── CKLBUIForm.h
│ │ ├── CKLBUIFreeVertItem.cpp
│ │ ├── CKLBUIFreeVertItem.h
│ │ ├── CKLBUIGroup.cpp
│ │ ├── CKLBUIGroup.h
│ │ ├── CKLBUILabel.cpp
│ │ ├── CKLBUILabel.h
│ │ ├── CKLBUIList.cpp
│ │ ├── CKLBUIList.h
│ │ ├── CKLBUIMoviePlayer.cpp
│ │ ├── CKLBUIMoviePlayer.h
│ │ ├── CKLBUIMultiImgItem.cpp
│ │ ├── CKLBUIMultiImgItem.h
│ │ ├── CKLBUIPieChart.cpp
│ │ ├── CKLBUIPieChart.h
│ │ ├── CKLBUIPolyline.cpp
│ │ ├── CKLBUIPolyline.h
│ │ ├── CKLBUIProgressBar.cpp
│ │ ├── CKLBUIProgressBar.h
│ │ ├── CKLBUIRubberBand.cpp
│ │ ├── CKLBUIRubberBand.h
│ │ ├── CKLBUISWFPlayer.cpp
│ │ ├── CKLBUISWFPlayer.h
│ │ ├── CKLBUIScale9.cpp
│ │ ├── CKLBUIScale9.h
│ │ ├── CKLBUIScore.cpp
│ │ ├── CKLBUIScore.h
│ │ ├── CKLBUIScrollBar.cpp
│ │ ├── CKLBUIScrollBar.h
│ │ ├── CKLBUISimpleItem.cpp
│ │ ├── CKLBUISimpleItem.h
│ │ ├── CKLBUISystem.cpp
│ │ ├── CKLBUISystem.h
│ │ ├── CKLBUITextInput.cpp
│ │ ├── CKLBUITextInput.h
│ │ ├── CKLBUITouchPad.cpp
│ │ ├── CKLBUITouchPad.h
│ │ ├── CKLBUIVariableItem.cpp
│ │ ├── CKLBUIVariableItem.h
│ │ ├── CKLBUIVirtualDoc.cpp
│ │ ├── CKLBUIVirtualDoc.h
│ │ ├── CKLBUIWebArea.cpp
│ │ ├── CKLBUIWebArea.h
│ │ ├── CKLBWebViewNode.cpp
│ │ ├── CKLBWebViewNode.h
│ │ ├── IMgrEntry.cpp
│ │ └── IMgrEntry.h
│ └── include/
│ ├── CPFInterface.h
│ ├── CSoundAnalysis.h
│ ├── KLBPlatformMetricsCommon.h
│ ├── RenderingFramework.h
│ ├── encryptFile.h
│ ├── encryptUserContext.h
│ ├── mem.h
│ └── unistd.h
├── README.md
├── SampleProject/
│ ├── CSharp/
│ │ ├── Program.cs
│ │ ├── Properties/
│ │ │ └── AssemblyInfo.cs
│ │ ├── SampleGame.csproj
│ │ ├── SampleGame.sln
│ │ └── ToCompile/
│ │ ├── Program.cs
│ │ ├── Properties/
│ │ │ └── AssemblyInfo.cs
│ │ └── ToCompile.csproj
│ ├── Cpp/
│ │ ├── framework.cpp
│ │ ├── framework.h
│ │ └── out.cpp
│ └── game/
│ ├── CSampleProjectEntrance.cpp
│ └── CSampleProjectEntrance.h
├── Tests/
│ ├── OSX/
│ │ ├── testcases_osx/
│ │ │ └── DummyTest.cpp
│ │ └── xcode/
│ │ ├── Config/
│ │ │ ├── DebugProject.xcconfig
│ │ │ ├── FrameworkTarget.xcconfig
│ │ │ ├── General.xcconfig
│ │ │ ├── ReleaseProject.xcconfig
│ │ │ ├── StaticLibraryTarget.xcconfig
│ │ │ └── TestTarget.xcconfig
│ │ ├── Resources/
│ │ │ └── Info.plist
│ │ ├── Samples/
│ │ │ └── FrameworkSample/
│ │ │ ├── Info.plist
│ │ │ ├── WidgetFramework.xcodeproj/
│ │ │ │ └── project.pbxproj
│ │ │ ├── runtests.sh
│ │ │ ├── widget.cc
│ │ │ ├── widget.h
│ │ │ └── widget_test.cc
│ │ ├── Scripts/
│ │ │ ├── runtests.sh
│ │ │ └── versiongenerate.py
│ │ └── gtest.xcodeproj/
│ │ └── project.pbxproj
│ ├── Win32/
│ │ └── msvc/
│ │ ├── gtest-md.sln
│ │ ├── gtest-md.vcproj
│ │ ├── gtest.sln
│ │ ├── gtest.vcproj
│ │ ├── gtest_main-md.vcproj
│ │ ├── gtest_main.vcproj
│ │ ├── gtest_prod_test-md.vcproj
│ │ ├── gtest_prod_test.vcproj
│ │ ├── gtest_unittest-md.vcproj
│ │ └── gtest_unittest.vcproj
│ ├── gtest/
│ │ ├── CHANGES
│ │ ├── CMakeLists.txt
│ │ ├── CONTRIBUTORS
│ │ ├── LICENSE
│ │ ├── Makefile.am
│ │ ├── Makefile.in
│ │ ├── README
│ │ ├── aclocal.m4
│ │ ├── build-aux/
│ │ │ ├── config.guess
│ │ │ ├── config.h.in
│ │ │ ├── config.sub
│ │ │ ├── depcomp
│ │ │ ├── install-sh
│ │ │ ├── ltmain.sh
│ │ │ └── missing
│ │ ├── cmake/
│ │ │ └── internal_utils.cmake
│ │ ├── codegear/
│ │ │ ├── gtest.cbproj
│ │ │ ├── gtest.groupproj
│ │ │ ├── gtest_all.cc
│ │ │ ├── gtest_link.cc
│ │ │ ├── gtest_main.cbproj
│ │ │ └── gtest_unittest.cbproj
│ │ ├── configure
│ │ ├── configure.ac
│ │ ├── fused-src/
│ │ │ └── gtest/
│ │ │ ├── gtest-all.cc
│ │ │ ├── gtest.h
│ │ │ └── gtest_main.cc
│ │ ├── include/
│ │ │ └── gtest/
│ │ │ ├── gtest-death-test.h
│ │ │ ├── gtest-message.h
│ │ │ ├── gtest-param-test.h
│ │ │ ├── gtest-param-test.h.pump
│ │ │ ├── gtest-printers.h
│ │ │ ├── gtest-spi.h
│ │ │ ├── gtest-test-part.h
│ │ │ ├── gtest-typed-test.h
│ │ │ ├── gtest.h
│ │ │ ├── gtest_pred_impl.h
│ │ │ ├── gtest_prod.h
│ │ │ └── internal/
│ │ │ ├── gtest-death-test-internal.h
│ │ │ ├── gtest-filepath.h
│ │ │ ├── gtest-internal.h
│ │ │ ├── gtest-linked_ptr.h
│ │ │ ├── gtest-param-util-generated.h
│ │ │ ├── gtest-param-util-generated.h.pump
│ │ │ ├── gtest-param-util.h
│ │ │ ├── gtest-port.h
│ │ │ ├── gtest-string.h
│ │ │ ├── gtest-tuple.h
│ │ │ ├── gtest-tuple.h.pump
│ │ │ ├── gtest-type-util.h
│ │ │ └── gtest-type-util.h.pump
│ │ ├── m4/
│ │ │ ├── acx_pthread.m4
│ │ │ ├── gtest.m4
│ │ │ ├── libtool.m4
│ │ │ ├── ltoptions.m4
│ │ │ ├── ltsugar.m4
│ │ │ ├── ltversion.m4
│ │ │ └── lt~obsolete.m4
│ │ ├── make/
│ │ │ └── Makefile
│ │ ├── samples/
│ │ │ ├── prime_tables.h
│ │ │ ├── sample1.cc
│ │ │ ├── sample1.h
│ │ │ ├── sample10_unittest.cc
│ │ │ ├── sample1_unittest.cc
│ │ │ ├── sample2.cc
│ │ │ ├── sample2.h
│ │ │ ├── sample2_unittest.cc
│ │ │ ├── sample3-inl.h
│ │ │ ├── sample3_unittest.cc
│ │ │ ├── sample4.cc
│ │ │ ├── sample4.h
│ │ │ ├── sample4_unittest.cc
│ │ │ ├── sample5_unittest.cc
│ │ │ ├── sample6_unittest.cc
│ │ │ ├── sample7_unittest.cc
│ │ │ ├── sample8_unittest.cc
│ │ │ └── sample9_unittest.cc
│ │ ├── scripts/
│ │ │ ├── fuse_gtest_files.py
│ │ │ ├── gen_gtest_pred_impl.py
│ │ │ ├── gtest-config.in
│ │ │ ├── pump.py
│ │ │ └── test/
│ │ │ └── Makefile
│ │ ├── src/
│ │ │ ├── gtest-all.cc
│ │ │ ├── gtest-death-test.cc
│ │ │ ├── gtest-filepath.cc
│ │ │ ├── gtest-internal-inl.h
│ │ │ ├── gtest-port.cc
│ │ │ ├── gtest-printers.cc
│ │ │ ├── gtest-test-part.cc
│ │ │ ├── gtest-typed-test.cc
│ │ │ ├── gtest.cc
│ │ │ └── gtest_main.cc
│ │ └── test/
│ │ ├── gtest-death-test_ex_test.cc
│ │ ├── gtest-death-test_test.cc
│ │ ├── gtest-filepath_test.cc
│ │ ├── gtest-linked_ptr_test.cc
│ │ ├── gtest-listener_test.cc
│ │ ├── gtest-message_test.cc
│ │ ├── gtest-options_test.cc
│ │ ├── gtest-param-test2_test.cc
│ │ ├── gtest-param-test_test.cc
│ │ ├── gtest-param-test_test.h
│ │ ├── gtest-port_test.cc
│ │ ├── gtest-printers_test.cc
│ │ ├── gtest-test-part_test.cc
│ │ ├── gtest-tuple_test.cc
│ │ ├── gtest-typed-test2_test.cc
│ │ ├── gtest-typed-test_test.cc
│ │ ├── gtest-typed-test_test.h
│ │ ├── gtest-unittest-api_test.cc
│ │ ├── gtest_all_test.cc
│ │ ├── gtest_break_on_failure_unittest.py
│ │ ├── gtest_break_on_failure_unittest_.cc
│ │ ├── gtest_catch_exceptions_test.py
│ │ ├── gtest_catch_exceptions_test_.cc
│ │ ├── gtest_color_test.py
│ │ ├── gtest_color_test_.cc
│ │ ├── gtest_env_var_test.py
│ │ ├── gtest_env_var_test_.cc
│ │ ├── gtest_environment_test.cc
│ │ ├── gtest_filter_unittest.py
│ │ ├── gtest_filter_unittest_.cc
│ │ ├── gtest_help_test.py
│ │ ├── gtest_help_test_.cc
│ │ ├── gtest_list_tests_unittest.py
│ │ ├── gtest_list_tests_unittest_.cc
│ │ ├── gtest_main_unittest.cc
│ │ ├── gtest_no_test_unittest.cc
│ │ ├── gtest_output_test.py
│ │ ├── gtest_output_test_.cc
│ │ ├── gtest_output_test_golden_lin.txt
│ │ ├── gtest_pred_impl_unittest.cc
│ │ ├── gtest_premature_exit_test.cc
│ │ ├── gtest_prod_test.cc
│ │ ├── gtest_repeat_test.cc
│ │ ├── gtest_shuffle_test.py
│ │ ├── gtest_shuffle_test_.cc
│ │ ├── gtest_sole_header_test.cc
│ │ ├── gtest_stress_test.cc
│ │ ├── gtest_test_utils.py
│ │ ├── gtest_throw_on_failure_ex_test.cc
│ │ ├── gtest_throw_on_failure_test.py
│ │ ├── gtest_throw_on_failure_test_.cc
│ │ ├── gtest_uninitialized_test.py
│ │ ├── gtest_uninitialized_test_.cc
│ │ ├── gtest_unittest.cc
│ │ ├── gtest_xml_outfile1_test_.cc
│ │ ├── gtest_xml_outfile2_test_.cc
│ │ ├── gtest_xml_outfiles_test.py
│ │ ├── gtest_xml_output_unittest.py
│ │ ├── gtest_xml_output_unittest_.cc
│ │ ├── gtest_xml_test_utils.py
│ │ ├── production.cc
│ │ └── production.h
│ ├── iOS/
│ │ └── xcode/
│ │ ├── Config/
│ │ │ ├── DebugProject.xcconfig
│ │ │ ├── FrameworkTarget.xcconfig
│ │ │ ├── General.xcconfig
│ │ │ ├── ReleaseProject.xcconfig
│ │ │ ├── StaticLibraryTarget.xcconfig
│ │ │ └── TestTarget.xcconfig
│ │ ├── Resources/
│ │ │ └── Info.plist
│ │ ├── Samples/
│ │ │ └── FrameworkSample/
│ │ │ ├── Info.plist
│ │ │ ├── WidgetFramework.xcodeproj/
│ │ │ │ └── project.pbxproj
│ │ │ ├── runtests.sh
│ │ │ ├── widget.cc
│ │ │ ├── widget.h
│ │ │ └── widget_test.cc
│ │ ├── Scripts/
│ │ │ ├── runtests.sh
│ │ │ └── versiongenerate.py
│ │ └── gtest.xcodeproj/
│ │ └── project.pbxproj
│ └── testcases_common/
│ └── CKLBNodeRenderCountTest.cpp
├── Tools/
│ └── Toboggan/
│ ├── .gitignore
│ ├── KLBToolHost.application
│ ├── KLBToolHost.exe.config
│ ├── KLBToolHost.exe.manifest
│ ├── README.ja.md
│ ├── ServiceStack.Common.xml
│ ├── ServiceStack.Interfaces.xml
│ ├── ServiceStack.Redis.xml
│ ├── ServiceStack.Text.xml
│ ├── ServiceStack.xml
│ ├── mac-setup.sh
│ ├── nunit.framework.xml
│ └── prjTemplate/
│ └── start.lua
└── Tutorial/
├── 01.SimpleItem/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── SimpleItem.lua
│ │ │ ├── itemimage.png.imag
│ │ │ ├── start.lua
│ │ │ └── textureBoat.texb
│ │ └── iphone/
│ │ ├── SimpleItem.lua
│ │ ├── itemimage.png.imag
│ │ ├── start.lua
│ │ └── textureBoat.texb
│ ├── SimpleItem.lua
│ ├── itemimage.png.xml
│ ├── start.lua
│ └── textureBoat.xml
├── 02.Score/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Score-0.png.imag
│ │ │ ├── Score-1.png.imag
│ │ │ ├── Score-2.png.imag
│ │ │ ├── Score-3.png.imag
│ │ │ ├── Score-4.png.imag
│ │ │ ├── Score-5.png.imag
│ │ │ ├── Score-6.png.imag
│ │ │ ├── Score-7.png.imag
│ │ │ ├── Score-8.png.imag
│ │ │ ├── Score-9.png.imag
│ │ │ ├── Score.lua
│ │ │ ├── scoreTexture.texb
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Score-0.png.imag
│ │ ├── Score-1.png.imag
│ │ ├── Score-2.png.imag
│ │ ├── Score-3.png.imag
│ │ ├── Score-4.png.imag
│ │ ├── Score-5.png.imag
│ │ ├── Score-6.png.imag
│ │ ├── Score-7.png.imag
│ │ ├── Score-8.png.imag
│ │ ├── Score-9.png.imag
│ │ ├── Score.lua
│ │ ├── scoreTexture.texb
│ │ └── start.lua
│ ├── Score-0.png.xml
│ ├── Score-1.png.xml
│ ├── Score-2.png.xml
│ ├── Score-3.png.xml
│ ├── Score-4.png.xml
│ ├── Score-5.png.xml
│ ├── Score-6.png.xml
│ ├── Score-7.png.xml
│ ├── Score-8.png.xml
│ ├── Score-9.png.xml
│ ├── Score.lua
│ ├── scoreTexture.xml
│ └── start.lua
├── 03.PieChart/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── PieChart.lua
│ │ │ ├── PieTex.texb
│ │ │ ├── piechart.png.imag
│ │ │ ├── start.lua
│ │ │ └── trash.png.imag
│ │ └── iphone/
│ │ ├── PieChart.lua
│ │ ├── PieTex.texb
│ │ ├── piechart.png.imag
│ │ ├── start.lua
│ │ └── trash.png.imag
│ ├── PieChart.lua
│ ├── PieTex.xml
│ ├── piechart.png.xml
│ ├── start.lua
│ └── trash.png.xml
├── 04.ProgressBar/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Progress.lua
│ │ │ ├── prog_h_empty.png.imag
│ │ │ ├── prog_h_full.png.imag
│ │ │ ├── progress.texb
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Progress.lua
│ │ ├── prog_h_empty.png.imag
│ │ ├── prog_h_full.png.imag
│ │ ├── progress.texb
│ │ └── start.lua
│ ├── Progress.lua
│ ├── prog_h_empty.png.xml
│ ├── prog_h_full.png.xml
│ ├── progress.xml
│ └── start.lua
├── 05.Polyline/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Polyline.lua
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Polyline.lua
│ │ └── start.lua
│ ├── Polyline.lua
│ └── start.lua
├── 06.TextBox/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── TextBox.lua
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── TextBox.lua
│ │ └── start.lua
│ ├── TextBox.lua
│ └── start.lua
├── 07.Label/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ │ ├── AlexBrush-Regular-OTF.otf
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ ├── AlexBrush-Regular-OTF.otf
│ │ └── start.lua
│ ├── Alex Brush SIL OFL Font License 1.1.txt
│ ├── AlexBrush-Regular-OTF.otf
│ ├── AlexBrush-Regular-OTF.otf.publish
│ └── start.lua
├── 08.DragIcon/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── DragIcon.lua
│ │ │ ├── dragicon.png.imag
│ │ │ ├── dragmark.png.imag
│ │ │ ├── iconassets.texb
│ │ │ ├── putimg.png.imag
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── DragIcon.lua
│ │ ├── dragicon.png.imag
│ │ ├── dragmark.png.imag
│ │ ├── iconassets.texb
│ │ ├── putimg.png.imag
│ │ └── start.lua
│ ├── DragIcon.lua
│ ├── dragicon.png.xml
│ ├── dragmark.png.xml
│ ├── iconassets.xml
│ ├── putimg.png.xml
│ └── start.lua
├── 09.RubberBand/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── RBitem.texb
│ │ │ ├── RubberBand.lua
│ │ │ ├── joint.png.imag
│ │ │ ├── origin.png.imag
│ │ │ ├── point.png.imag
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── RBitem.texb
│ │ ├── RubberBand.lua
│ │ ├── joint.png.imag
│ │ ├── origin.png.imag
│ │ ├── point.png.imag
│ │ └── start.lua
│ ├── RBitem.xml
│ ├── RubberBand.lua
│ ├── joint.png.xml
│ ├── origin.png.xml
│ ├── point.png.xml
│ └── start.lua
├── 10.IntervalTimer/
│ ├── .publish/
│ │ ├── android/
│ │ │ └── start.lua
│ │ └── iphone/
│ │ └── start.lua
│ └── start.lua
├── 11.LangTest/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── start.lua
│ │ │ └── tableScheme.db_
│ │ └── iphone/
│ │ ├── start.lua
│ │ └── tableScheme.db_
│ ├── .server/
│ │ └── lang_tbl.csv
│ ├── lang_tbl.csv
│ ├── start.lua
│ └── tableScheme.csql
├── 12.FreeVertItem/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── FreeVertItem.lua
│ │ │ ├── TileA.png.imag
│ │ │ ├── TileB.png.imag
│ │ │ ├── TileC.png.imag
│ │ │ ├── start.lua
│ │ │ └── texture.texb
│ │ └── iphone/
│ │ ├── FreeVertItem.lua
│ │ ├── TileA.png.imag
│ │ ├── TileB.png.imag
│ │ ├── TileC.png.imag
│ │ ├── start.lua
│ │ └── texture.texb
│ ├── FreeVertItem.lua
│ ├── TileA.png.xml
│ ├── TileB.png.xml
│ ├── TileC.png.xml
│ ├── start.lua
│ └── texture.xml
├── 13.VariableItem/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── VariableItem.lua
│ │ │ ├── itemMask.png.imag
│ │ │ ├── itemimage.png.imag
│ │ │ ├── itemimage2.png.imag
│ │ │ ├── start.lua
│ │ │ └── textureBoat.texb
│ │ └── iphone/
│ │ ├── VariableItem.lua
│ │ ├── itemMask.png.imag
│ │ ├── itemimage.png.imag
│ │ ├── itemimage2.png.imag
│ │ ├── start.lua
│ │ └── textureBoat.texb
│ ├── VariableItem.lua
│ ├── itemMask.png.xml
│ ├── itemimage.png.xml
│ ├── itemimage2.png.xml
│ ├── start.lua
│ └── textureBoat.xml
├── 14.MultiImgItem/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── MultiImgItem.lua
│ │ │ ├── TileA.png.imag
│ │ │ ├── TileB.png.imag
│ │ │ ├── TileC.png.imag
│ │ │ ├── start.lua
│ │ │ └── texture.texb
│ │ └── iphone/
│ │ ├── MultiImgItem.lua
│ │ ├── TileA.png.imag
│ │ ├── TileB.png.imag
│ │ ├── TileC.png.imag
│ │ ├── start.lua
│ │ └── texture.texb
│ ├── MultiImgItem.lua
│ ├── TileA.png.xml
│ ├── TileB.png.xml
│ ├── TileC.png.xml
│ ├── start.lua
│ └── texture.xml
├── 15.Scale9/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Horiz.png.imag
│ │ │ ├── Scale9.lua
│ │ │ ├── Tex.texb
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Horiz.png.imag
│ │ ├── Scale9.lua
│ │ ├── Tex.texb
│ │ └── start.lua
│ ├── Horiz.png.xml
│ ├── Scale9.lua
│ ├── Tex.xml
│ └── start.lua
├── 16.Sound/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── RBtex.texb
│ │ │ ├── RubberBand.lua
│ │ │ ├── bgm.ogg
│ │ │ ├── joint.png.imag
│ │ │ ├── origin.png.imag
│ │ │ ├── point.png.imag
│ │ │ ├── se_drag.ogg
│ │ │ ├── se_off.ogg
│ │ │ ├── se_on.ogg
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── RBtex.texb
│ │ ├── RubberBand.lua
│ │ ├── joint.png.imag
│ │ ├── origin.png.imag
│ │ ├── point.png.imag
│ │ └── start.lua
│ ├── RBtex.xml
│ ├── RubberBand.lua
│ ├── joint.png.xml
│ ├── origin.png.xml
│ ├── point.png.xml
│ └── start.lua
├── 17.VDoc/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ │ ├── AlexBrush-Regular-OTF.otf
│ │ │ ├── VDoc.lua
│ │ │ ├── VDoc2.lua
│ │ │ ├── inline.png.imag
│ │ │ ├── inline2.png.imag
│ │ │ ├── start.lua
│ │ │ └── texture.texb
│ │ └── iphone/
│ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ ├── AlexBrush-Regular-OTF.otf
│ │ ├── VDoc.lua
│ │ ├── VDoc2.lua
│ │ ├── inline.png.imag
│ │ ├── inline2.png.imag
│ │ ├── start.lua
│ │ └── texture.texb
│ ├── Alex Brush SIL OFL Font License 1.1.txt
│ ├── AlexBrush-Regular-OTF.otf
│ ├── AlexBrush-Regular-OTF.otf.publish
│ ├── VDoc.lua
│ ├── VDoc2.lua
│ ├── inline.png.xml
│ ├── inline2.png.xml
│ ├── start.lua
│ └── texture.xml
├── 18.DebugItem/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ │ ├── AlexBrush-Regular-OTF.otf
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ ├── AlexBrush-Regular-OTF.otf
│ │ └── start.lua
│ ├── Alex Brush SIL OFL Font License 1.1.txt
│ ├── AlexBrush-Regular-OTF.otf
│ ├── AlexBrush-Regular-OTF.otf.publish
│ └── start.lua
├── 19.GenericTask/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── GenericTask.lua
│ │ │ ├── genChar2.lua
│ │ │ ├── itemimage.png.imag
│ │ │ ├── start.lua
│ │ │ └── testtex.texb
│ │ └── iphone/
│ │ ├── GenericTask.lua
│ │ ├── genChar2.lua
│ │ ├── itemimage.png.imag
│ │ ├── start.lua
│ │ └── testtex.texb
│ ├── GenericTask.lua
│ ├── genChar2.lua
│ ├── itemimage.png.xml
│ ├── start.lua
│ └── testtex.xml
├── 20.LifeCtrl/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── LifeCtrl.lua
│ │ │ ├── itemimage.png.imag
│ │ │ ├── start.lua
│ │ │ └── textureBoat.texb
│ │ └── iphone/
│ │ ├── LifeCtrl.lua
│ │ ├── itemimage.png.imag
│ │ ├── start.lua
│ │ └── textureBoat.texb
│ ├── LifeCtrl.lua
│ ├── itemimage.png.xml
│ ├── start.lua
│ └── textureBoat.xml
├── 21.Form/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ │ ├── AlexBrush-Regular-OTF.otf
│ │ │ ├── Form.lua
│ │ │ ├── assets/
│ │ │ │ ├── AREA0001_BG.png.imag
│ │ │ │ ├── AVATER0001.png.imag
│ │ │ │ ├── AVATER0002.png.imag
│ │ │ │ ├── AVATER0003.png.imag
│ │ │ │ ├── AVATER0004.png.imag
│ │ │ │ ├── AVATER0005.png.imag
│ │ │ │ ├── AVATER0006.png.imag
│ │ │ │ ├── AVATER0007.png.imag
│ │ │ │ ├── AVATER0008.png.imag
│ │ │ │ ├── BTN_Battle_off.png.imag
│ │ │ │ ├── BTN_Battle_on.png.imag
│ │ │ │ ├── BTN_Close_off.png.imag
│ │ │ │ ├── BTN_Close_on.png.imag
│ │ │ │ ├── BTN_Continue_off.png.imag
│ │ │ │ ├── BTN_Continue_on.png.imag
│ │ │ │ ├── BTN_Do_Again_off.png.imag
│ │ │ │ ├── BTN_Do_Again_on.png.imag
│ │ │ │ ├── BTN_Go_to_next_off.png.imag
│ │ │ │ ├── BTN_Go_to_next_on.png.imag
│ │ │ │ ├── BTN_Invite_to_alliance_off.png.imag
│ │ │ │ ├── BTN_Invite_to_alliance_on.png.imag
│ │ │ │ ├── BTN_Send_comment_off.png.imag
│ │ │ │ ├── BTN_Send_comment_on.png.imag
│ │ │ │ ├── BTN_Skip_off.png.imag
│ │ │ │ ├── BTN_Skip_on.png.imag
│ │ │ │ ├── CARD0001.png.imag
│ │ │ │ ├── CARD0002.png.imag
│ │ │ │ ├── CARD0003.png.imag
│ │ │ │ ├── CARD0004.png.imag
│ │ │ │ ├── CARD0005.png.imag
│ │ │ │ ├── CARD0006.png.imag
│ │ │ │ ├── CARD0007.png.imag
│ │ │ │ ├── CARD0008.png.imag
│ │ │ │ ├── area0001.texb
│ │ │ │ ├── avater.texb
│ │ │ │ ├── bg.texb
│ │ │ │ ├── bg_00.png.imag
│ │ │ │ ├── bg_02.png.imag
│ │ │ │ ├── btn.texb
│ │ │ │ └── card.texb
│ │ │ ├── form.json
│ │ │ ├── form1.json
│ │ │ ├── form1.lua
│ │ │ └── start.lua
│ │ └── iphone/
│ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ ├── AlexBrush-Regular-OTF.otf
│ │ ├── Form.lua
│ │ ├── assets/
│ │ │ ├── AREA0001_BG.png.imag
│ │ │ ├── AVATER0001.png.imag
│ │ │ ├── AVATER0002.png.imag
│ │ │ ├── AVATER0003.png.imag
│ │ │ ├── AVATER0004.png.imag
│ │ │ ├── AVATER0005.png.imag
│ │ │ ├── AVATER0006.png.imag
│ │ │ ├── AVATER0007.png.imag
│ │ │ ├── AVATER0008.png.imag
│ │ │ ├── BTN_Battle_off.png.imag
│ │ │ ├── BTN_Battle_on.png.imag
│ │ │ ├── BTN_Close_off.png.imag
│ │ │ ├── BTN_Close_on.png.imag
│ │ │ ├── BTN_Continue_off.png.imag
│ │ │ ├── BTN_Continue_on.png.imag
│ │ │ ├── BTN_Do_Again_off.png.imag
│ │ │ ├── BTN_Do_Again_on.png.imag
│ │ │ ├── BTN_Go_to_next_off.png.imag
│ │ │ ├── BTN_Go_to_next_on.png.imag
│ │ │ ├── BTN_Invite_to_alliance_off.png.imag
│ │ │ ├── BTN_Invite_to_alliance_on.png.imag
│ │ │ ├── BTN_Send_comment_off.png.imag
│ │ │ ├── BTN_Send_comment_on.png.imag
│ │ │ ├── BTN_Skip_off.png.imag
│ │ │ ├── BTN_Skip_on.png.imag
│ │ │ ├── CARD0001.png.imag
│ │ │ ├── CARD0002.png.imag
│ │ │ ├── CARD0003.png.imag
│ │ │ ├── CARD0004.png.imag
│ │ │ ├── CARD0005.png.imag
│ │ │ ├── CARD0006.png.imag
│ │ │ ├── CARD0007.png.imag
│ │ │ ├── CARD0008.png.imag
│ │ │ ├── area0001.texb
│ │ │ ├── avater.texb
│ │ │ ├── bg.texb
│ │ │ ├── bg_00.png.imag
│ │ │ ├── bg_02.png.imag
│ │ │ ├── btn.texb
│ │ │ └── card.texb
│ │ ├── form.json
│ │ ├── form1.json
│ │ ├── form1.lua
│ │ └── start.lua
│ ├── Alex Brush SIL OFL Font License 1.1.txt
│ ├── AlexBrush-Regular-OTF.otf
│ ├── AlexBrush-Regular-OTF.otf.publish
│ ├── Form.lua
│ ├── assets/
│ │ ├── AREA0001_BG.png.xml
│ │ ├── AVATER0001.png.xml
│ │ ├── AVATER0002.png.xml
│ │ ├── AVATER0003.png.xml
│ │ ├── AVATER0004.png.xml
│ │ ├── AVATER0005.png.xml
│ │ ├── AVATER0006.png.xml
│ │ ├── AVATER0007.png.xml
│ │ ├── AVATER0008.png.xml
│ │ ├── BTN_Battle_off.png.xml
│ │ ├── BTN_Battle_on.png.xml
│ │ ├── BTN_Close_off.png.xml
│ │ ├── BTN_Close_on.png.xml
│ │ ├── BTN_Continue_off.png.xml
│ │ ├── BTN_Continue_on.png.xml
│ │ ├── BTN_Do_Again_off.png.xml
│ │ ├── BTN_Do_Again_on.png.xml
│ │ ├── BTN_Go_to_next_off.png.xml
│ │ ├── BTN_Go_to_next_on.png.xml
│ │ ├── BTN_Invite_to_alliance_off.png.xml
│ │ ├── BTN_Invite_to_alliance_on.png.xml
│ │ ├── BTN_Send_comment_off.png.xml
│ │ ├── BTN_Send_comment_on.png.xml
│ │ ├── BTN_Skip_off.png.xml
│ │ ├── BTN_Skip_on.png.xml
│ │ ├── CARD0001.png.xml
│ │ ├── CARD0002.png.xml
│ │ ├── CARD0003.png.xml
│ │ ├── CARD0004.png.xml
│ │ ├── CARD0005.png.xml
│ │ ├── CARD0006.png.xml
│ │ ├── CARD0007.png.xml
│ │ ├── CARD0008.png.xml
│ │ ├── area0001.xml
│ │ ├── avater.xml
│ │ ├── bg.xml
│ │ ├── bg_00.png.xml
│ │ ├── bg_02.png.xml
│ │ ├── btn.xml
│ │ └── card.xml
│ ├── form.xml
│ ├── form1.lua
│ ├── form1.xml
│ └── start.lua
├── 22.List/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ │ ├── AlexBrush-Regular-OTF.otf
│ │ │ ├── List.lua
│ │ │ ├── change_tex.png.imag
│ │ │ ├── scr_bar.texb
│ │ │ ├── scrbar.png.imag
│ │ │ ├── start.lua
│ │ │ ├── test_item.json
│ │ │ └── test_tex.png.imag
│ │ └── iphone/
│ │ ├── Alex Brush SIL OFL Font License 1.1.txt
│ │ ├── AlexBrush-Regular-OTF.otf
│ │ ├── List.lua
│ │ ├── change_tex.png.imag
│ │ ├── scr_bar.texb
│ │ ├── scrbar.png.imag
│ │ ├── start.lua
│ │ ├── test_item.json
│ │ └── test_tex.png.imag
│ ├── Alex Brush SIL OFL Font License 1.1.txt
│ ├── AlexBrush-Regular-OTF.otf
│ ├── AlexBrush-Regular-OTF.otf.publish
│ ├── List.lua
│ ├── change_tex.png.xml
│ ├── scr_bar.xml
│ ├── scrbar.png.xml
│ ├── start.lua
│ ├── test_item.xml
│ └── test_tex.png.xml
├── 23.ListSpline/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── assets/
│ │ │ │ ├── AVATAR0001.png.imag
│ │ │ │ ├── AVATAR0002.png.imag
│ │ │ │ ├── Horiz.png.imag
│ │ │ │ ├── Horiz2.png.imag
│ │ │ │ └── texture.texb
│ │ │ ├── list.json
│ │ │ ├── start.lua
│ │ │ ├── ui_item1.json
│ │ │ └── ui_item2.json
│ │ └── iphone/
│ │ ├── assets/
│ │ │ ├── AVATAR0001.png.imag
│ │ │ ├── AVATAR0002.png.imag
│ │ │ ├── Horiz.png.imag
│ │ │ ├── Horiz2.png.imag
│ │ │ └── texture.texb
│ │ ├── list.json
│ │ ├── start.lua
│ │ ├── ui_item1.json
│ │ └── ui_item2.json
│ ├── assets/
│ │ ├── AVATAR0001.png.xml
│ │ ├── AVATAR0002.png.xml
│ │ ├── Horiz.png.xml
│ │ ├── Horiz2.png.xml
│ │ └── texture.xml
│ ├── list.xml
│ ├── start.lua
│ ├── ui_item1.xml
│ └── ui_item2.xml
├── 24.Canvas/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Canvas.lua
│ │ │ ├── TileA.png.imag
│ │ │ ├── TileB.png.imag
│ │ │ ├── TileC.png.imag
│ │ │ ├── start.lua
│ │ │ └── texture.texb
│ │ └── iphone/
│ │ ├── Canvas.lua
│ │ ├── TileA.png.imag
│ │ ├── TileB.png.imag
│ │ ├── TileC.png.imag
│ │ ├── start.lua
│ │ └── texture.texb
│ ├── Canvas.lua
│ ├── TileA.png.xml
│ ├── TileB.png.xml
│ ├── TileC.png.xml
│ ├── start.lua
│ └── texture.xml
├── 25.SWFPlayer/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Char.png.imag
│ │ │ ├── SWFPlayer.lua
│ │ │ ├── TestScale.flsh
│ │ │ ├── movie.flsh
│ │ │ ├── start.lua
│ │ │ └── texture.texb
│ │ └── iphone/
│ │ ├── Char.png.imag
│ │ ├── SWFPlayer.lua
│ │ ├── TestScale.flsh
│ │ ├── movie.flsh
│ │ ├── start.lua
│ │ └── texture.texb
│ ├── Char.png.xml
│ ├── SWFPlayer.lua
│ ├── TestScale.flash.fla
│ ├── TestScale.flash.html
│ ├── TestScale.flash.swf
│ ├── start.lua
│ └── texture.xml
├── 26.ScrollBar/
│ ├── .publish/
│ │ ├── android/
│ │ │ ├── Horiz.png.imag
│ │ │ ├── Horiz2.png.imag
│ │ │ ├── ScrollBar.lua
│ │ │ ├── Vert.png.imag
│ │ │ ├── Vert2.png.imag
│ │ │ ├── start.lua
│ │ │ └── texture.texb
│ │ └── iphone/
│ │ ├── Horiz.png.imag
│ │ ├── Horiz2.png.imag
│ │ ├── ScrollBar.lua
│ │ ├── Vert.png.imag
│ │ ├── Vert2.png.imag
│ │ ├── start.lua
│ │ └── texture.texb
│ ├── Horiz.png.xml
│ ├── Horiz2.png.xml
│ ├── ScrollBar.lua
│ ├── Vert.png.xml
│ ├── Vert2.png.xml
│ ├── start.lua
│ └── texture.xml
├── Licenses.txt
└── Tutorial.md
Showing preview only (2,703K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (23718 symbols across 1581 files)
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/AbstractContainer.cpp
function TypeObject (line 52) | TypeObject* AbstractContainer::getGenericType(TypeGenericDefinitionEntry...
function TypeObject (line 76) | TypeObject* AbstractContainer::getType() {
function TypeObject (line 122) | TypeObject* AbstractContainer::getAncestor()
function AbstractContainer (line 164) | AbstractContainer* AbstractContainer::addInheritance(TypeObject* type) {
function Variable (line 175) | Variable* AbstractContainer::addVariable(Attribute* attribute, u32 mod...
function AbstractContainer (line 189) | AbstractContainer* AbstractContainer::addProperty(Attribute* attribute, ...
function AbstractContainer (line 210) | AbstractContainer* AbstractContainer::addProperty(Attribute* attribute, ...
function Method (line 224) | Method* AbstractContainer::addConstructor(Attribute* attribute, u32 modi...
function Method (line 242) | Method* AbstractContainer::addDestructor(Attribute* attribute, u32 modif...
function Method (line 256) | Method* AbstractContainer::addMethod(Attribute* attribute, u32 modifier,...
function Variable (line 277) | Variable* AbstractContainer::findMember(const char* name)
function Method (line 292) | Method* AbstractContainer::findMethod(const char* name, Expression* sign...
function Method (line 352) | Method* AbstractContainer::findMethod(const char* name, Variable* signat...
function Method (line 411) | Method* AbstractContainer::findDestructor()
function Accessor (line 422) | Accessor* AbstractContainer::findProperty(const char* name)
function Accessor (line 441) | Accessor* AbstractContainer::findPropertyIndexer(Expression* solvedSigna...
function AbstractContainer (line 458) | AbstractContainer* CreateInternal(Attribute* attribute, u32 modifier, co...
function AbstractContainer (line 505) | AbstractContainer* CreateClass (Attribute* attribute, u32 modifier, cons...
function AbstractContainer (line 509) | AbstractContainer* CreateStruct(Attribute* attribute, u32 modifier, cons...
function AbstractContainer (line 513) | AbstractContainer* CreateInterface(Attribute* attribute, u32 modifier, c...
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/AbstractContainer.h
function class (line 26) | class AbstractContainer : public NameSpace {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Attribute.cpp
function Attribute (line 42) | Attribute* Attribute::addChildAttribute(Attribute* pChild) {
function Attribute (line 53) | Attribute* Attribute::addAttribute(TypeObject* type, Expression* expr)
function Attribute (line 65) | Attribute* Attribute::setSpecifier(u32 specifierAttrb)
function Attribute (line 88) | Attribute* CreateAttribute(TypeObject* type, Expression* expr) {
function Attribute (line 128) | Attribute* CreateAttributeWithChild(Attribute* attr) {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Attribute.h
type SStructInfo (line 21) | typedef struct SStructInfo {
type SMarshallingInfo (line 30) | typedef struct {
function class (line 35) | class Attribute {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/BaseType.h
type s32 (line 37) | typedef int s32;
type u32 (line 38) | typedef unsigned int u32;
type s16 (line 39) | typedef short s16;
type u16 (line 40) | typedef unsigned short u16;
type s8 (line 41) | typedef char s8;
type u8 (line 42) | typedef unsigned char u8;
type s64 (line 43) | typedef long long s64;
type u64 (line 44) | typedef unsigned long long u64;
type ptrAsInt (line 45) | typedef unsigned int ptrAsInt;
type u16 (line 46) | typedef u16 uniChar;
type u32 (line 47) | typedef u32 uint;
type u8 (line 48) | typedef u8 byte;
type s8 (line 49) | typedef s8 sbyte;
type EGENRE (line 75) | enum EGENRE {
type SRSymbol (line 91) | struct SRSymbol {
type StringID (line 99) | struct StringID {
type SValue (line 106) | struct SValue {
type EnumTypeObject (line 176) | enum EnumTypeObject {
type EATTRIBUTE (line 204) | enum EATTRIBUTE {
type EnumExpressionType (line 251) | enum EnumExpressionType {
type EnumStatementType (line 333) | enum EnumStatementType {
type EOVEROP (line 373) | enum EOVEROP {
type ECOMPARISON (line 398) | enum ECOMPARISON {
type EMATCH (line 404) | enum EMATCH {
type EnumError (line 413) | enum EnumError {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/CompilerProject.cpp
type SCmdLineInfos (line 25) | struct SCmdLineInfos {
method SCmdLineInfos (line 35) | SCmdLineInfos()
function contains (line 46) | bool contains(const char** nameArray, int size, const char* name)
function isFile (line 61) | bool isFile(const char* path)
function isValid (line 72) | bool isValid(const char* path)
function analyzeText (line 105) | bool analyzeText(u16* firstChar, u16* lastChar) {
function patchBlock (line 150) | bool patchBlock(int level, u16* pChar) {
function patchFile (line 161) | void patchFile(u16* file, int length) {
function generate (line 209) | void generate(u16* file, int length, char* result) {
function recurse (line 249) | void recurse(const char* folder, const char** parsedFiles, int parsedFil...
function displayHelp (line 308) | void displayHelp() {
function extractArgs (line 374) | bool extractArgs(int argc, const char** argv, SCmdLineInfos* infos)
function u32 (line 507) | u32 getCompilerOptions(SCmdLineInfos* infos) {
function _tmain (line 521) | int _tmain(int argc, const char* argv[])
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Dump.cpp
class GCSupport (line 23) | class GCSupport {
function tab (line 54) | void tab() { for (int n=0; n < depth; n++) { printf(" "); } }
function dumpUtf8ToUniChar (line 56) | void dumpUtf8ToUniChar(const char* str) {
function exportConstants (line 70) | void exportConstants() {
function exportInlineFiles (line 89) | void exportInlineFiles(const char* outputPath, ClassDictionary* CD) {
function exportStatics (line 103) | void exportStatics(NameSpace* nSpace, const char* precNameSpace) {
function initStaticVar (line 152) | void initStaticVar(Variable* pVar) {
function setStaticsVarRec (line 203) | void setStaticsVarRec(int nestCount, Variable* pVar) {
function setStatics (line 227) | void setStatics() {
function registerStaticsRec (line 238) | void registerStaticsRec(int nestCount, char* prefix, AbstractContainer* ...
function registerStatics (line 274) | void registerStatics(NameSpace* nSpace, const char* precNameSpace) {
function registerGCWorld (line 307) | void registerGCWorld(NameSpace* root, u32 compilerOptions) {
function dumpUsings (line 387) | void dumpUsings(NameSpace* nSpace) {
function dumpEnums (line 404) | void dumpEnums(NameSpace* nSpace) {
function dumpDelegatePrototypes (line 429) | void dumpDelegatePrototypes(NameSpace* nSpace) {
function dumpClassPrototypes (line 440) | void dumpClassPrototypes(NameSpace* nSpace, bool forExport) {
function recursiveRegisterClassDependancy (line 457) | void recursiveRegisterClassDependancy(NameSpace* pCurrSpace) {
function exportPrototypes (line 523) | void exportPrototypes() {
function dumpDelegates (line 537) | void dumpDelegates(const char* prefix, NameSpace* nSpace) {
function exportRuntimeIncludes (line 546) | void exportRuntimeIncludes() {
function exportFrameworkHeader (line 562) | void exportFrameworkHeader(){
function exportFrameworkFooter (line 570) | void exportFrameworkFooter(){
function exportNameSpaceHeader (line 589) | void exportNameSpaceHeader(NameSpace* nSpace, bool forExport) {
function exportNameSpaceImplementation (line 611) | void exportNameSpaceImplementation(NameSpace* nSpace) {
function processDelegateAssignment (line 662) | void processDelegateAssignment(Expression*& expression,TypeObject* typeO...
function Statement (line 715) | Statement* Statement::wrapCaseBody() {
function SRSymbol (line 1478) | SRSymbol Expression::resolveIteration(const char* text, SRSymbol input, ...
function transformIn_This (line 1593) | void transformIn_This(Expression* expr) {
function dumpStringWrapper (line 2387) | void dumpStringWrapper(Expression* expr) {
function dumpWrapper (line 2459) | void dumpWrapper(Expression* expr, bool safe) {
function writeMemberOrAccessor (line 2698) | void writeMemberOrAccessor(u32 modifier, bool isAccessor, const char* na...
function dumpCopyVarDelegate (line 3190) | void dumpCopyVarDelegate(Variable* pVars) {
function dumpSafeWrapper (line 5364) | void dumpSafeWrapper(const char* pName, const char* pStrType, const char...
function dumpAccessorWrapper (line 5381) | void dumpAccessorWrapper(EnumExpressionType type, const char* pName, con...
function dumpAccessorWrappers (line 5506) | void dumpAccessorWrappers(const char* pName, const char* pStrType, bool ...
function dumpGlobalInitializerPrototype (line 5532) | void dumpGlobalInitializerPrototype() {
function dumpGlobalInitializerImplementation (line 5553) | void dumpGlobalInitializerImplementation() {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Expression.cpp
function Expression (line 54) | Expression* Expression::patchSubInvoke() {
function SValue (line 59) | SValue Expression::getValue()
function Expression (line 198) | Expression* Expression::addExpression (Expression* newExpr) {
function Expression (line 203) | Expression* Expression::setIdentifier (const char* id) {
function Expression (line 208) | Expression* Expression::setType (TypeObject* type) {
function Expression (line 213) | Expression* Expression::setType (TypeObject* type, Quals* quals) {
function Expression (line 228) | Expression* Expression::addParenthesis () {
function Expression (line 233) | Expression* Expression::setArrayNew(bool generateArrayType) {
function Expression (line 242) | Expression* Expression::setRank(u32 rank) {
function Expression (line 247) | Expression* Expression::setValue(SValue val) {
function Expression (line 269) | Expression* CreateMultipleExpr (Expression* first) {
function contains (line 276) | bool contains(const char* str, int char_) {
function Expression (line 285) | Expression* CreateLeafExpr (EnumExpressionType type, const char* ident) {
function SInitialization (line 316) | SInitialization* registerGlobalInitializer(Expression* expr) {
function GenerateInitList (line 330) | void GenerateInitList() {
function PopInitList (line 336) | void PopInitList() {
function Expression (line 353) | Expression* getInitList() {
function Expression (line 357) | Expression* CreateSingleExpr (EnumExpressionType type, Expression* child) {
function Expression (line 370) | Expression* CreateDoubleExpr (EnumExpressionType type, Expression* pre, ...
function Expression (line 378) | Expression* CreateTripleExpr (EnumExpressionType type, Expression* cond,...
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Expression.h
type SInitialization (line 21) | struct SInitialization {
function class (line 38) | class Expression {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Method.cpp
function TypeObject (line 82) | TypeObject* Method::getGenericType(TypeGenericDefinitionEntry* genericSy...
function TypeGenericDefinitionEntry (line 145) | TypeGenericDefinitionEntry* Method::findGenericSymbol(const char* name) {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/NameSpace.cpp
function Delegate (line 95) | Delegate* NameSpace::addDelegate(Attribute* attribute, u32 modifier, Typ...
function Enum (line 143) | Enum* NameSpace::addEnum(Attribute* pAttrib, u32 modifier, const char* n...
function NameSpace (line 180) | NameSpace* NameSpace::setup(Attribute* attribute, const char* nameSpace)
function NameSpace (line 199) | NameSpace* NameSpace::findNameSpace(const char* name)
function Enum (line 223) | Enum* NameSpace::findEnum(const char* name)
function Delegate (line 237) | Delegate* NameSpace::findDelegate(const char* name) {
function Symbol (line 252) | Symbol* NameSpace::findContext(const char* name, u8 searchMask, int iter...
function Symbol (line 353) | Symbol* NameSpace::resolve(const char* name, u8 searchMask, int iteration)
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/NameSpace.h
function class (line 25) | class NameSpace : public Symbol {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Statement.cpp
function Statement (line 42) | Statement* Statement::setExpression(Expression* expr) {
function Statement (line 48) | Statement* Statement::addLabel(const char* label) {
function Statement (line 54) | Statement* Statement::addType(TypeObject* type) {
function Statement (line 59) | Statement* Statement::addNext(Statement* next) {
function Statement (line 69) | Statement* Statement::addChild(Statement* child) {
function Statement (line 80) | Statement* Statement::addChildNilWrap(Statement* child) {
function Statement (line 88) | Statement* Statement::setConstant() {
function Statement (line 93) | Statement* CreateStatement(EnumStatementType statementType, Statement* b...
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Statement.h
function class (line 32) | class Statement {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Symbol.cpp
function Symbol (line 105) | Symbol* createNotFoundSymbol() {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Symbol.h
function class (line 24) | class Symbol {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/TypeObject.cpp
function initBaseType (line 93) | void initBaseType() {
function TypeObject (line 392) | TypeObject* TypeObject::getTypeObject(EnumTypeObject defType) {
function TypeObject (line 419) | TypeObject* TypeObject::getTypeObject(const char* typeName, EnumTypeObje...
function NameSpace (line 430) | NameSpace* common(NameSpace* ref, NameSpace* nm) {
function NameSpace (line 450) | NameSpace* common(NameSpace* ref, Delegate* delegate_) {
function NameSpace (line 454) | NameSpace* common(NameSpace* ref, Enum* enum_) {
function isStdType (line 486) | int isStdType(TypeObject* type) {
function TypeObject (line 504) | TypeObject* TypeObject::getResolvedBlend(TypeObject* other) {
function SRSymbol (line 550) | SRSymbol TypeObject::getResolvedType(NameSpace* nameSpaceContext, Method...
function TypeObject (line 637) | TypeObject* TypeObject::clone()
function TypeObject (line 649) | TypeObject* TypeObject::addPointer()
function TypeGenericDefinitionEntry (line 660) | TypeGenericDefinitionEntry* popGenericNameList() {
function addGenericName (line 666) | void addGenericName(const char* name) {
function addGenericType (line 683) | void addGenericType(TypeObject* type) {
function PushGenericType (line 701) | void PushGenericType(TypeGenericEntry* data) {
function TypeGenericEntry (line 706) | TypeGenericEntry* PopGenericType() {
function TypeGenericEntry (line 710) | TypeGenericEntry* GetGenericType() {
function TypeObject (line 716) | TypeObject* TypeObject::setGeneric(TypeGenericEntry* genericList) {
function TypeObject (line 721) | TypeObject* TypeObject::createArrayType(int dimension) {
function TypeObject (line 762) | TypeObject* TypeObject::addRank(int dimensions)
function ECOMPARISON (line 1029) | ECOMPARISON compareConversions(TypeObject* type, TypeObject* type1, Type...
function ECOMPARISON (line 1108) | ECOMPARISON compareGenerics(TypeObject* type1, TypeObject* type2) {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/TypeObject.h
function class (line 21) | class TypeGenericDefinitionEntry : public Symbol {
type TypeGenericEntry (line 30) | struct TypeGenericEntry {
function class (line 36) | class TypeObject : public Symbol {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/UTF8Parser.cpp
function u32 (line 133) | u32 decode(u32* state, u32* codep, u8 byte) {
function u32 (line 145) | u32 toUtf16(const u8* src, u32 srcSizeBytes, u16* dst, u32 dstSizeWord) {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Variable.cpp
function Variable (line 45) | Variable* Variable::addVariable (Variable* pNextVariable) {
function Variable (line 54) | Variable* Variable::setInitializer(Expression* pExpr) {
function Variable (line 59) | Variable* Variable::setAttribute (Attribute* attrib) {
function Variable (line 64) | Variable* Variable::setModifier (u32 modifier) {
function Variable (line 69) | Variable* Variable::setType (TypeObject* type) {
function Variable (line 74) | Variable* Variable::setIsEndLessParam () {
function Variable (line 79) | Variable* Variable::setValue (SValue v) {
function Statement (line 95) | Statement* CreateVarStatement (EnumStatementType statementType, Stateme...
function Variable (line 129) | Variable* CreateVarInstance (const char* varName) {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/Variable.h
function class (line 28) | class Variable : public Symbol {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/compilerLibrary.cpp
function expand (line 27) | void expand(int* count, void*** array_, void* newEntry) {
function compilerError (line 48) | void compilerError(EnumError err, const char* format, int lineNumber) {
function SValue (line 99) | SValue SValue::ToType(int type) {
function TypeObject (line 343) | TypeObject* Delegate::getType() {
function NameSpace (line 393) | NameSpace* Delegate::getOwner() {
function Variable (line 423) | Variable* DependancyMatrix::popIndependantVariable(int domain) {
function AbstractContainer (line 427) | AbstractContainer* DependancyMatrix::popIndependantAbstractContainer(int...
function Symbol (line 432) | Symbol* DependancyMatrix::popIndependantSymbol(EGENRE genre, u32 mask, i...
function Quals (line 493) | Quals* Quals::addQuals(u32 rank) {
function TypeObject (line 542) | TypeObject* Enum::getType() {
function createAlias (line 616) | void createAlias (const char* alias, const char* originalName) {
function addUsingNameSpace (line 620) | void addUsingNameSpace (const char* nameSpace) {
function Accessor (line 624) | Accessor* CreateAccessor (Attribute* attribute, Statement* pStatement) {
function Accessor (line 631) | Accessor* CreateAccessor (Accessor* get_, Accessor* _set) {
function Enum (line 638) | Enum* CreateEnum (Attribute* attribute, u32 modifier, const char* nam...
function Expression (line 642) | Expression* CreateDelegateExpr(Variable* params, Statement* code) {
function Delegate (line 660) | Delegate* CreateDelegate (Attribute* attribute, u32 modifier, TypeObjec...
function SymbolDictionary (line 694) | SymbolDictionary* SymbolDictionary::addDictionary() {
function SymbolDictionary (line 703) | SymbolDictionary* SymbolDictionary::removeDictionary() {
function Variable (line 717) | Variable* SymbolDictionary::findVariable(const char* name) {
function useOrCreateNameSpace (line 752) | void useOrCreateNameSpace(Attribute* attribute, const char* nameSpace) {
function unuseNameSpace (line 776) | void unuseNameSpace () {
function traceFunc (line 816) | void traceFunc(int line, int input, const char* token) {
function PushSpace (line 822) | void PushSpace(NameSpace* p) { nameSpaceStack[nameSpaceStackIndex++] = ...
function NameSpace (line 823) | NameSpace* PopSpace() { return nameSpaceStack[--nameSpaceStackIndex]; }
function display (line 825) | void display (const char* str)
function StringList (line 830) | StringList* split (const char* str)
function resetLocalFileInfo (line 856) | void resetLocalFileInfo() {
function checkEntryPoint (line 862) | bool checkEntryPoint(u32 compilerOptions) {
function generateOutput (line 895) | void generateOutput(const char* outputPath, u32 compilerOptions) {
function SValue (line 941) | SValue registerString(SValue v) {
function getContext (line 967) | void getContext(Symbol* symbol, NameSpace*& out_namespace, Method*& out_...
function SRSymbol (line 1004) | SRSymbol resolveSimpleSymbol(SRSymbol baseContext, const char* name, u8 ...
function isBetterFunctionMember (line 1137) | bool isBetterFunctionMember(Variable* argList1, Variable* argList2, Expr...
function isBetterFunctionMember (line 1181) | bool isBetterFunctionMember(Variable* argList1, Variable* argList2, Vari...
function EMATCH (line 1217) | EMATCH compareSignatures(Variable* argList, Expression* signature) {
function EMATCH (line 1309) | EMATCH compareSignatures(Variable* argList, Variable* signature) {
function templateClassSpecializationDumpForOneGenericType (line 1378) | bool templateClassSpecializationDumpForOneGenericType(const char** templ...
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/compilerLibrary.h
type OPOVERRIDE (line 34) | enum OPOVERRIDE {
function class (line 64) | class Uses {
function class (line 75) | class Argument : public Variable {
function class (line 83) | class Accessor : public Symbol {
function class (line 106) | class Method : public Symbol {
function class (line 143) | class MethodList : public Method {
function class (line 155) | class Delegate : public Method {
function class (line 172) | class Enum : public NameSpace {
function class (line 202) | class StringList {
function class (line 214) | class Quals {
function class (line 226) | class DependancyMatrix {
function class (line 246) | class SymbolDictionary {
type ClassDictionary (line 265) | struct ClassDictionary {
type SInitialization (line 325) | struct SInitialization
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/csharpcompiler.cpp
type yyltype (line 177) | struct yyltype
function __yy_memcpy (line 1741) | static void
function YYPARSE_PARAM_DECL (line 1770) | int
function runCompiler (line 4540) | int runCompiler(const char *str)
function yyerror (line 4559) | void yyerror(const char* s) {
function isatty (line 4566) | int isatty(int fildes) {
function error (line 4570) | void error (const char* msg,...) {
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/dirent.c
type handle_type (line 22) | typedef ptrdiff_t handle_type;
type DIR (line 24) | struct DIR
function DIR (line 32) | DIR *opendir(const char *name)
function closedir (line 74) | int closedir(DIR *dir)
type dirent (line 97) | struct dirent
type dirent (line 99) | struct dirent
function rewinddir (line 117) | void rewinddir(DIR *dir)
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/dirent.h
type DIR (line 19) | typedef struct DIR DIR;
type dirent (line 21) | struct dirent
type dirent (line 28) | struct dirent
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/supported.cs
class Object (line 19) | public class Object
method Object (line 21) | public Object() {}
method Equals (line 22) | public virtual bool Equals (Object obj){}
method Equals (line 23) | public static bool Equals (Object objA, Object objB){}
method GetHashCode (line 24) | public virtual int GetHashCode (){}
method GetType (line 27) | public string GetType (){}
method CompareTo (line 28) | public virtual int CompareTo (Object obj){}
method ReferenceEquals (line 29) | public static bool ReferenceEquals (Object objA, Object objB){}
method ToString (line 30) | public virtual String ToString (){}
class IntPtr (line 33) | public class IntPtr : Object
class Exception (line 40) | public class Exception : Object {
class SystemException (line 44) | public class SystemException : Exception {}
class NullReferenceException (line 45) | public class NullReferenceException : SystemException {}
class IndexOutOfRangeException (line 46) | public class IndexOutOfRangeException : SystemException {}
class OutOfMemoryException (line 47) | public class OutOfMemoryException : SystemException {}
class ArgumentException (line 48) | public class ArgumentException : SystemException {}
class ArgumentOutOfRangeException (line 49) | public class ArgumentOutOfRangeException : ArgumentException {}
class ArgumentNullException (line 50) | public class ArgumentNullException : ArgumentException {}
class RankException (line 51) | public class RankException : SystemException {}
class CppNotComparable (line 52) | public class CppNotComparable : SystemException {}
class InvalidOperationException (line 53) | public class InvalidOperationException : SystemException {}
class ArrayTypeMismatchException (line 54) | public class ArrayTypeMismatchException : SystemException {}
class ArithmeticException (line 55) | public class ArithmeticException : SystemException {}
class DivideByZeroException (line 56) | public class DivideByZeroException : ArithmeticException {}
class Array (line 59) | public abstract class Array<T> : Object
method BinarySearch (line 72) | public static int BinarySearch(Array Array, Object value){}
method BinarySearch (line 73) | public static int BinarySearch(Array Array, sbyte value){}
method BinarySearch (line 74) | public static int BinarySearch(Array Array, byte value){}
method BinarySearch (line 75) | public static int BinarySearch(Array Array, short value){}
method BinarySearch (line 76) | public static int BinarySearch(Array Array, ushort value){}
method BinarySearch (line 77) | public static int BinarySearch(Array Array, int value){}
method BinarySearch (line 78) | public static int BinarySearch(Array Array, uint value){}
method BinarySearch (line 79) | public static int BinarySearch(Array Array, long value){}
method BinarySearch (line 80) | public static int BinarySearch(Array Array, ulong value){}
method BinarySearch (line 81) | public static int BinarySearch(Array Array, float value){}
method BinarySearch (line 82) | public static int BinarySearch(Array Array, double value){}
method BinarySearch (line 83) | public static int BinarySearch(Array Array, bool value){}
method BinarySearch (line 85) | public static int BinarySearch(Array Array, int index, int length, Obj...
method BinarySearch (line 86) | public static int BinarySearch(Array Array, int index, int length, sby...
method BinarySearch (line 87) | public static int BinarySearch(Array Array, int index, int length, byt...
method BinarySearch (line 88) | public static int BinarySearch(Array Array, int index, int length, sho...
method BinarySearch (line 89) | public static int BinarySearch(Array Array, int index, int length, ush...
method BinarySearch (line 90) | public static int BinarySearch(Array Array, int index, int length, int...
method BinarySearch (line 91) | public static int BinarySearch(Array Array, int index, int length, uin...
method BinarySearch (line 92) | public static int BinarySearch(Array Array, int index, int length, lon...
method BinarySearch (line 93) | public static int BinarySearch(Array Array, int index, int length, ulo...
method BinarySearch (line 94) | public static int BinarySearch(Array Array, int index, int length, flo...
method BinarySearch (line 95) | public static int BinarySearch(Array Array, int index, int length, dou...
method BinarySearch (line 96) | public static int BinarySearch(Array Array, int index, int length, boo...
method Clear (line 98) | public static void Clear(Array Array, int index, int length){}
method Clone (line 99) | public Object Clone(){}
method GetLength (line 114) | public int GetLength(int dimension){}
method GetLongLength (line 115) | public long GetLongLength(int dimension){}
method GetLowerBound (line 116) | public int GetLowerBound(int dimension){}
method GetUpperBound (line 117) | public int GetUpperBound(int dimension){}
method IndexOf (line 129) | public static int IndexOf(Array Array, Object value) { }
method IndexOf (line 130) | public static int IndexOf(Array Array, sbyte value) { }
method IndexOf (line 131) | public static int IndexOf(Array Array, byte value) { }
method IndexOf (line 132) | public static int IndexOf(Array Array, short value) { }
method IndexOf (line 133) | public static int IndexOf(Array Array, ushort value) { }
method IndexOf (line 134) | public static int IndexOf(Array Array, int value) { }
method IndexOf (line 135) | public static int IndexOf(Array Array, uint value) { }
method IndexOf (line 136) | public static int IndexOf(Array Array, long value) { }
method IndexOf (line 137) | public static int IndexOf(Array Array, ulong value) { }
method IndexOf (line 138) | public static int IndexOf(Array Array, double value) { }
method IndexOf (line 139) | public static int IndexOf(Array Array, float value) { }
method IndexOf (line 140) | public static int IndexOf(Array Array, bool value) { }
method IndexOf (line 142) | public static int IndexOf(Array Array, Object value, int startIndex)...
method IndexOf (line 143) | public static int IndexOf(Array Array, sbyte value, int startIndex)...
method IndexOf (line 144) | public static int IndexOf(Array Array, byte value, int startIndex)...
method IndexOf (line 145) | public static int IndexOf(Array Array, short value, int startIndex)...
method IndexOf (line 146) | public static int IndexOf(Array Array, ushort value, int startIndex)...
method IndexOf (line 147) | public static int IndexOf(Array Array, int value, int startIndex)...
method IndexOf (line 148) | public static int IndexOf(Array Array, uint value, int startIndex)...
method IndexOf (line 149) | public static int IndexOf(Array Array, long value, int startIndex)...
method IndexOf (line 150) | public static int IndexOf(Array Array, ulong value, int startIndex)...
method IndexOf (line 151) | public static int IndexOf(Array Array, double value, int startIndex)...
method IndexOf (line 152) | public static int IndexOf(Array Array, float value, int startIndex)...
method IndexOf (line 153) | public static int IndexOf(Array Array, bool value, int startIndex)...
method IndexOf (line 155) | public static int IndexOf(Array Array, Object value, int startIndex,...
method IndexOf (line 156) | public static int IndexOf(Array Array, sbyte value, int startIndex,...
method IndexOf (line 157) | public static int IndexOf(Array Array, byte value, int startIndex,...
method IndexOf (line 158) | public static int IndexOf(Array Array, short value, int startIndex,...
method IndexOf (line 159) | public static int IndexOf(Array Array, ushort value, int startIndex,...
method IndexOf (line 160) | public static int IndexOf(Array Array, int value, int startIndex,...
method IndexOf (line 161) | public static int IndexOf(Array Array, uint value, int startIndex,...
method IndexOf (line 162) | public static int IndexOf(Array Array, long value, int startIndex,...
method IndexOf (line 163) | public static int IndexOf(Array Array, ulong value, int startIndex,...
method IndexOf (line 164) | public static int IndexOf(Array Array, double value, int startIndex,...
method IndexOf (line 165) | public static int IndexOf(Array Array, float value, int startIndex,...
method IndexOf (line 166) | public static int IndexOf(Array Array, bool value, int startIndex,...
method LastIndexOf (line 169) | public static int LastIndexOf(Array Array, Object value) { }
method LastIndexOf (line 170) | public static int LastIndexOf(Array Array, sbyte value) { }
method LastIndexOf (line 171) | public static int LastIndexOf(Array Array, byte value) { }
method LastIndexOf (line 172) | public static int LastIndexOf(Array Array, short value) { }
method LastIndexOf (line 173) | public static int LastIndexOf(Array Array, ushort value) { }
method LastIndexOf (line 174) | public static int LastIndexOf(Array Array, int value) { }
method LastIndexOf (line 175) | public static int LastIndexOf(Array Array, uint value) { }
method LastIndexOf (line 176) | public static int LastIndexOf(Array Array, long value) { }
method LastIndexOf (line 177) | public static int LastIndexOf(Array Array, ulong value) { }
method LastIndexOf (line 178) | public static int LastIndexOf(Array Array, double value) { }
method LastIndexOf (line 179) | public static int LastIndexOf(Array Array, float value) { }
method LastIndexOf (line 180) | public static int LastIndexOf(Array Array, bool value) { }
method LastIndexOf (line 182) | public static int LastIndexOf(Array Array, Object value, int startInde...
method LastIndexOf (line 183) | public static int LastIndexOf(Array Array, sbyte value, int startIndex...
method LastIndexOf (line 184) | public static int LastIndexOf(Array Array, byte value, int startIndex)...
method LastIndexOf (line 185) | public static int LastIndexOf(Array Array, short value, int startIndex...
method LastIndexOf (line 186) | public static int LastIndexOf(Array Array, ushort value, int startInde...
method LastIndexOf (line 187) | public static int LastIndexOf(Array Array, int value, int startIndex) { }
method LastIndexOf (line 188) | public static int LastIndexOf(Array Array, uint value, int startIndex)...
method LastIndexOf (line 189) | public static int LastIndexOf(Array Array, long value, int startIndex)...
method LastIndexOf (line 190) | public static int LastIndexOf(Array Array, ulong value, int startIndex...
method LastIndexOf (line 191) | public static int LastIndexOf(Array Array, double value, int startInde...
method LastIndexOf (line 192) | public static int LastIndexOf(Array Array, float value, int startIndex...
method LastIndexOf (line 193) | public static int LastIndexOf(Array Array, bool value, int startIndex)...
method LastIndexOf (line 195) | public static int LastIndexOf(Array Array, Object value, int startInde...
method LastIndexOf (line 196) | public static int LastIndexOf(Array Array, sbyte value, int startIndex...
method LastIndexOf (line 197) | public static int LastIndexOf(Array Array, byte value, int startIndex,...
method LastIndexOf (line 198) | public static int LastIndexOf(Array Array, short value, int startIndex...
method LastIndexOf (line 199) | public static int LastIndexOf(Array Array, ushort value, int startInde...
method LastIndexOf (line 200) | public static int LastIndexOf(Array Array, int value, int startIndex, ...
method LastIndexOf (line 201) | public static int LastIndexOf(Array Array, uint value, int startIndex,...
method LastIndexOf (line 202) | public static int LastIndexOf(Array Array, long value, int startIndex,...
method LastIndexOf (line 203) | public static int LastIndexOf(Array Array, ulong value, int startIndex...
method LastIndexOf (line 204) | public static int LastIndexOf(Array Array, double value, int startInde...
method LastIndexOf (line 205) | public static int LastIndexOf(Array Array, float value, int startIndex...
method LastIndexOf (line 206) | public static int LastIndexOf(Array Array, bool value, int startIndex,...
method Reverse (line 207) | public static void Reverse(Array Array){}
method Reverse (line 208) | public static void Reverse(Array Array, int index, int length){}
method Sort (line 220) | public static void Sort(Array Array){}
method Sort (line 224) | public static void Sort(Array Array, int index, int length){}
method BinarySearch (line 237) | public static int BinarySearch(T[] array, T value) { }
method BinarySearch (line 239) | public static int BinarySearch<T>(T[] array, int index, int length, T ...
method IndexOf (line 253) | public static int IndexOf<T>(T[] array, T value) { }
method IndexOf (line 254) | public static int IndexOf<T>(T[] array, T value, int startIndex) { }
method IndexOf (line 255) | public static int IndexOf<T>(T[] array, T value, int startIndex, int c...
method LastIndexOf (line 256) | public static int LastIndexOf<T>(T[] array, T value) { }
method LastIndexOf (line 257) | public static int LastIndexOf<T>(T[] array, T value, int startIndex) { }
method LastIndexOf (line 258) | public static int LastIndexOf<T>(T[] array, T value, int startIndex, i...
method Resize (line 259) | public static void Resize<T>(ref T[] array, int newSize) { }
method Sort (line 260) | public static void Sort<T>(T[] array) { }
method Sort (line 263) | public static void Sort<T>(T[] array, int index, int length) { }
class String (line 269) | public sealed class String : Object
method String (line 274) | public String(char[] value){}
method String (line 276) | public String(char c, int count){}
method String (line 278) | public String(char[] value, int startIndex, int length){}
method Clone (line 290) | public Object Clone(){}
method Compare (line 291) | public static int Compare(string strA, string strB){}
method Compare (line 292) | public static int Compare(string strA, string strB, bool ignoreCase){}
method CompareTo (line 303) | public int CompareTo(Object value){}
method CompareTo (line 304) | public int CompareTo(string strB){}
method Concat (line 307) | public static string Concat(Object arg0){}
method Concat (line 308) | public static string Concat(/*params*/ Object[] args){}
method Concat (line 309) | public static string Concat(/*params*/ string[] values){}
method Contains (line 316) | public bool Contains(string value){}
method Copy (line 317) | public static string Copy(string str){}
method CopyTo (line 318) | public void CopyTo(int sourceIndex, char[] destination, int destinatio...
method EndsWith (line 319) | public bool EndsWith(string value){}
method Equals (line 322) | public override bool Equals(Object obj){}
method Equals (line 323) | public bool Equals(string value){}
method Equals (line 324) | public static bool Equals(string a, string b){}
method Equals (line 325) | public bool Equals(string value, StringComparison comparisonType){}
method GetHashCode (line 333) | public override int GetHashCode(){}
method IndexOf (line 335) | public int IndexOf(char value){}
method IndexOf (line 336) | public int IndexOf(string value){}
method IndexOf (line 337) | public int IndexOf(char value, int startIndex){}
method IndexOf (line 338) | public int IndexOf(string value, int startIndex){}
method IndexOf (line 340) | public int IndexOf(char value, int startIndex, int count){}
method IndexOf (line 341) | public int IndexOf(string value, int startIndex, int count){}
method IndexOfAny (line 344) | public int IndexOfAny(char[] anyOf){}
method IndexOfAny (line 345) | public int IndexOfAny(char[] anyOf, int startIndex){}
method IndexOfAny (line 346) | public int IndexOfAny(char[] anyOf, int startIndex, int count){}
method Insert (line 347) | public string Insert(int startIndex, string value){}
method IsNullOrEmpty (line 352) | public static bool IsNullOrEmpty(string value){}
method Join (line 357) | public static string Join(string separator, /*params*/ string[] value){}
method Join (line 358) | public static string Join(string separator, string[] value, int startI...
method LastIndexOf (line 359) | public int LastIndexOf(char value){}
method LastIndexOf (line 360) | public int LastIndexOf(string value){}
method LastIndexOf (line 361) | public int LastIndexOf(char value, int startIndex){}
method LastIndexOf (line 362) | public int LastIndexOf(string value, int startIndex){}
method LastIndexOf (line 364) | public int LastIndexOf(char value, int startIndex, int count){}
method LastIndexOf (line 365) | public int LastIndexOf(string value, int startIndex, int count){}
method LastIndexOfAny (line 368) | public int LastIndexOfAny(char[] anyOf){}
method LastIndexOfAny (line 369) | public int LastIndexOfAny(char[] anyOf, int startIndex){}
method LastIndexOfAny (line 370) | public int LastIndexOfAny(char[] anyOf, int startIndex, int count){}
method PadLeft (line 373) | public string PadLeft(int totalWidth){}
method PadLeft (line 374) | public string PadLeft(int totalWidth, char paddingChar){}
method PadRight (line 375) | public string PadRight(int totalWidth){}
method PadRight (line 376) | public string PadRight(int totalWidth, char paddingChar){}
method Remove (line 377) | public string Remove(int startIndex){}
method Remove (line 378) | public string Remove(int startIndex, int count){}
method Replace (line 379) | public string Replace(char oldChar, char newChar){}
method Replace (line 380) | public string Replace(string oldValue, string newValue){}
method Split (line 381) | public string[] Split(/*params*/char[] separator){}
method Split (line 382) | public string[] Split(char[] separator, int count){}
method Split (line 383) | public string[] Split(char[] separator, StringSplitOptions options){}
method Split (line 384) | public string[] Split(string[] separator, StringSplitOptions options){}
method Split (line 385) | public string[] Split(char[] separator, int count, StringSplitOptions ...
method Split (line 386) | public string[] Split(string[] separator, int count, StringSplitOption...
method StartsWith (line 387) | public bool StartsWith(string value){}
method Substring (line 390) | public string Substring(int startIndex){}
method Substring (line 391) | public string Substring(int startIndex, int length){}
method ToCharArray (line 392) | public char[] ToCharArray(){}
method ToCharArray (line 393) | public char[] ToCharArray(int startIndex, int length){}
method ToLower (line 394) | public string ToLower(){}
method ToString (line 397) | public override string ToString(){}
method ToUpper (line 399) | public string ToUpper(){}
method Trim (line 402) | public string Trim(){}
method Trim (line 403) | public string Trim(/*params*/ char[] trimChars){}
method TrimEnd (line 404) | public string TrimEnd(/*params*/ char[] trimChars = null){}
method TrimStart (line 405) | public string TrimStart(/*params*/ char[] trimChars = null){}
type StringComparison (line 408) | public enum StringComparison
type StringSplitOptions (line 418) | public enum StringSplitOptions
class IEnumerator (line 426) | public class IEnumerator
class IEnumerable (line 432) | public class IEnumerable
class IEnumerator (line 438) | public class IEnumerator</*out*/T> {}
class IEnumerable (line 439) | public class IEnumerable </*out*/T> {}
class IComparer (line 440) | public class IComparer </*in*/T> {}
class List (line 442) | public class List<T> : Object
method List (line 444) | public List(){}
method List (line 446) | public List(int capacity){}
method Add (line 450) | public void Add(T item){}
method BinarySearch (line 453) | public int BinarySearch(T item){}
method Clear (line 456) | public void Clear(){}
method Contains (line 457) | public bool Contains(T item){}
method CopyTo (line 459) | public void CopyTo(T[] array){}
method CopyTo (line 460) | public void CopyTo(T[] array, int arrayIndex){}
method CopyTo (line 461) | public void CopyTo(int index, T[] array, int arrayIndex, int count){}
method GetRange (line 474) | public List<T> GetRange(int index, int count){}
method IndexOf (line 475) | public int IndexOf(T item){}
method IndexOf (line 476) | public int IndexOf(T item, int index){}
method IndexOf (line 477) | public int IndexOf(T item, int index, int count){}
method Insert (line 478) | public void Insert(int index, T item){}
method LastIndexOf (line 480) | public int LastIndexOf(T item){}
method LastIndexOf (line 481) | public int LastIndexOf(T item, int index){}
method LastIndexOf (line 482) | public int LastIndexOf(T item, int index, int count){}
method Remove (line 483) | public bool Remove(T item){}
method RemoveAt (line 485) | public void RemoveAt(int index){}
method RemoveRange (line 486) | public void RemoveRange(int index, int count){}
method Reverse (line 487) | public void Reverse(){}
method Reverse (line 488) | public void Reverse(int index, int count){}
method Sort (line 489) | public void Sort(){}
method ToArray (line 493) | public T[] ToArray(){}
method TrimExcess (line 494) | public void TrimExcess(){}
class Dictionary (line 503) | public class Dictionary<TKey, TValue> : Object
method Dictionary (line 505) | public Dictionary() { }
method Dictionary (line 508) | public Dictionary(int capacity) { }
method Add (line 520) | public void Add(TKey key, TValue value) { }
method Clear (line 521) | public void Clear() { }
method ContainsKey (line 522) | public bool ContainsKey(TKey key) { }
method ContainsValue (line 523) | public bool ContainsValue(TValue value) { }
method Remove (line 527) | public bool Remove(TKey key) { }
method TryGetValue (line 528) | public bool TryGetValue(TKey key, out TValue value) { }
class KeyNotFoundException (line 575) | public class KeyNotFoundException : Exception { }
class Console (line 579) | public static class Console
method Write (line 631) | public static void Write(bool value) { }
method Write (line 632) | public static void Write(char value) { }
method Write (line 633) | public static void Write(char[] buffer) { }
method Write (line 635) | public static void Write(double value) { }
method Write (line 636) | public static void Write(float value) { }
method Write (line 637) | public static void Write(int value) { }
method Write (line 638) | public static void Write(long value) { }
method Write (line 639) | public static void Write(object value) { }
method Write (line 640) | public static void Write(string value) { }
method Write (line 641) | public static void Write(uint value) { }
method Write (line 642) | public static void Write(ulong value) { }
method WriteLine (line 649) | public static void WriteLine() { }
method WriteLine (line 650) | public static void WriteLine(bool value) { }
method WriteLine (line 651) | public static void WriteLine(char value) { }
method WriteLine (line 652) | public static void WriteLine(char[] buffer) { }
method WriteLine (line 654) | public static void WriteLine(double value) { }
method WriteLine (line 655) | public static void WriteLine(float value) { }
method WriteLine (line 656) | public static void WriteLine(int value) { }
method WriteLine (line 657) | public static void WriteLine(long value) { }
method WriteLine (line 658) | public static void WriteLine(object value) { }
method WriteLine (line 659) | public static void WriteLine(string value) { }
method WriteLine (line 660) | public static void WriteLine(uint value) { }
method WriteLine (line 661) | public static void WriteLine(ulong value) { }
method WriteLine (line 664) | public static void WriteLine(char[] buffer, int index, int count) { }
class Attribute (line 670) | public abstract class Attribute : _Attribute {}
type _Attribute (line 674) | public interface _Attribute {}
type CharSet (line 676) | public enum CharSet
type LayoutKind (line 684) | public enum LayoutKind
class Marshal (line 691) | public static class Marshal {
method ReadInt32 (line 692) | public static int ReadInt32(IntPtr ptr) {}
class StructLayoutAttribute (line 695) | public sealed class StructLayoutAttribute : Attribute
method StructLayoutAttribute (line 701) | public StructLayoutAttribute(LayoutKind layoutKind) {}
method StructLayoutAttribute (line 702) | public StructLayoutAttribute(short layoutKind) {}
type IDisposable (line 709) | public interface IDisposable {}
type ICloneable (line 710) | public interface ICloneable {}
class Delegate (line 712) | public abstract class Delegate : Object
FILE: CSharpVersion/CSharp_CPPCompiler/CompilerProject/y.tab.h
type yystype (line 24) | struct yystype {
FILE: CSharpVersion/EnginePrototype/FrameworkCore/CKLBException.cs
class CKLBException (line 23) | public class CKLBException : Exception
method CKLBException (line 25) | public CKLBException(String msg = "") : base(msg)
class CKLBExceptionNotImplemented (line 33) | public class CKLBExceptionNotImplemented : CKLBException
method CKLBExceptionNotImplemented (line 35) | public CKLBExceptionNotImplemented(String msg = "Not implemented") : b...
class CKLBExceptionForbiddenMethod (line 43) | public class CKLBExceptionForbiddenMethod : CKLBException
method CKLBExceptionForbiddenMethod (line 45) | public CKLBExceptionForbiddenMethod(String msg = "Forbidden Method") :...
class CKLBExceptionNullCppObject (line 53) | public class CKLBExceptionNullCppObject : CKLBException
method CKLBExceptionNullCppObject (line 55) | public CKLBExceptionNullCppObject(String msg = "Null CppObject Pointer...
class CKLBExceptionTooOld (line 64) | public class CKLBExceptionTooOld : CKLBException
method CKLBExceptionTooOld (line 66) | public CKLBExceptionTooOld(String msg = "Use iterator or related objec...
FILE: CSharpVersion/EnginePrototype/FrameworkCore/GameObject.cs
class GameObject (line 48) | public abstract class GameObject : IDisposable
method CKLBObjectScriptable_getScriptContext (line 51) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBObjectScriptable_setScriptContext (line 53) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method isBoundToCpp (line 105) | public bool isBoundToCpp()
method GameObject (line 114) | public GameObject(uint typeID)
method bind (line 129) | internal void bind(IntPtr cppObj)
method bind (line 154) | public void bind(String nodeName)
method unbind (line 179) | public void unbind()
method doSetupCallbacks (line 191) | protected virtual void doSetupCallbacks() { }
method clearInternals (line 196) | internal virtual void clearInternals() // Should be private, visibl...
method Dispose (line 205) | public virtual void Dispose() // Inherited classes with unmanaged reso...
method setDelegate (line 242) | public virtual void setDelegate(Delegate anyDelegate, String delegateN...
method staticSetDelegate (line 259) | public static void staticSetDelegate(uint handle, Delegate delegatePtr...
method forceSetupCallBackWithVirtual (line 269) | protected void forceSetupCallBackWithVirtual(String delegateName = null)
method registerCallBack (line 283) | protected void registerCallBack(Delegate callback, uint index = 0)
method getCallBack (line 297) | internal Delegate getCallBack(uint index)
FILE: CSharpVersion/EnginePrototype/FrameworkCore/GameObjectFactory.cs
class GameObjectFactory (line 30) | internal static class GameObjectFactory
FILE: CSharpVersion/EnginePrototype/FrameworkCore/NativeManagement.cs
class NativeManagement (line 30) | public static class NativeManagement
method CKLBObject_getTypeID (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBObjectScriptable_getScriptContext (line 37) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBObjectScriptable_setScriptContext (line 39) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBScriptEnv_getCallBackCount (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBScriptEnv_getErrorPtr (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBScriptEnv_getErrorString (line 49) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBScriptEnv_resetError (line 52) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method resetCppError (line 107) | public static void resetCppError()
method intercepCppError (line 116) | public static void intercepCppError()
method getContextCounter (line 127) | internal static uint getContextCounter()
method getTypeID (line 141) | public static uint getTypeID(IntPtr cppObj)
method registerWrapper (line 155) | public static void registerWrapper(IntPtr cppObj, uint handle)
method unregisterWrapper (line 185) | public static void unregisterWrapper(IntPtr cppObj)
method destroyFromNative (line 202) | public static void destroyFromNative(uint handle)
method doCallBackV (line 212) | public static void doCallBackV(uint cbInfos)
method doCallBackII (line 226) | public static void doCallBackII(uint cbInfos, int int_1, int int_2)
method doCallBackIII (line 239) | public static void doCallBackIII(uint cbInfos, int int_1, int int_2, i...
method doCallBackIIII (line 252) | public static void doCallBackIIII(uint cbInfos, int int_1, int int_2, ...
method doCallBackS (line 266) | public static void doCallBackS(uint cbInfos, IntPtr intptr_1)
method doCallBackSII (line 279) | public static void doCallBackSII(uint cbInfos, IntPtr intptr_1, int in...
method doCallBackSU (line 292) | public static void doCallBackSU(uint cbInfos, IntPtr intptr_1, uint ui...
method doCallBackSS (line 305) | public static void doCallBackSS(uint cbInfos, IntPtr intptr_1, IntPtr ...
method doCallBackUS (line 319) | public static void doCallBackUS(uint cbInfos, uint uint_1, IntPtr intp...
method doCallBackUSS (line 332) | public static void doCallBackUSS(uint cbInfos, uint uint_1, IntPtr int...
method doCallBackU (line 346) | public static void doCallBackU(uint cbInfos, uint uint_1)
method doCallBackUU (line 359) | public static void doCallBackUU(uint cbInfos, uint uint_1, uint uint_2)
method doCallBackUFF (line 372) | public static void doCallBackUFF(uint cbInfos, uint uint_1, float floa...
method doCallBackUI (line 385) | public static void doCallBackUI(uint cbInfos, uint uint_1, int int_1)
method doCallBackUII (line 398) | public static void doCallBackUII(uint cbInfos, uint uint_1, int int_1,...
method doCallBackUIIII (line 411) | public static void doCallBackUIIII(uint cbInfos, uint uint_1, int int_...
method doCallBackUIIUU (line 424) | public static void doCallBackUIIUU(uint cbInfos, uint uint_1, int int_...
method doCallBackUUII (line 437) | public static void doCallBackUUII(uint cbInfos, uint uint_1, uint uint...
method doCallBackUUUII (line 450) | public static void doCallBackUUUII(uint cbInfos, uint uint_1, uint uin...
method doCallBackIIIP_retB (line 464) | public static bool doCallBackIIIP_retB(uint cbInfos, int int_1, int in...
method doCallBackFS (line 478) | public static void doCallBackFS(uint cbInfos, float float_1, IntPtr in...
FILE: CSharpVersion/EnginePrototype/FrameworkCore/NodeIterator.cs
class NodeIterator (line 40) | public class NodeIterator
method node_getRoot (line 43) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getChild (line 46) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getParent (line 49) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getBrother (line 52) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getNodeFromTask (line 55) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getNodeScaleX (line 58) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getNodeScaleY (line 61) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getRotation (line 64) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getNodeTranslateX (line 67) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getNodeTranslateY (line 70) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getName (line 73) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_setName (line 76) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_setTranslate (line 79) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_setRotation (line 82) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_setScale (line 85) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getColorMatrixVec (line 88) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_setColorMatrixVec (line 91) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getColorMatrixUInt (line 94) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_setColorMatrixUInt (line 97) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_setVisible (line 100) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getVisible (line 103) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_asElement (line 107) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_asContainer (line 110) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_asSelectable (line 113) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_asAnimationNode (line 116) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_getUITask (line 119) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_search (line 123) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method node_searchFirstByTypeID (line 126) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method NodeIterator (line 134) | public NodeIterator() { }
method NodeIterator (line 142) | internal NodeIterator(uint counter, IntPtr node) {
method getRoot (line 151) | internal static IntPtr getRoot()
method getNodeFromTask (line 156) | internal static IntPtr getNodeFromTask(CKLBUITask task)
method getAsElement (line 161) | public Element getAsElement() {
method getAsContainer (line 173) | public Container getAsContainer() {
method getAsSelectable (line 185) | public Selectable getAsSelectable() {
method getAsAnimationNode (line 197) | public AnimationNode getAsAnimationNode()
method gotoChild (line 216) | public bool gotoChild(bool registerStack = false)
method gotoBrother (line 235) | public bool gotoBrother(bool registerStack = false)
method gotoParent (line 252) | public bool gotoParent(bool registerStack = false)
method rollback (line 277) | public bool rollback()
method find (line 300) | public bool find(String name, bool registerStack = false)
method getAsUITask (line 324) | public CKLBUITask getAsUITask()
method bindTask (line 345) | public CKLBUITask bindTask(CKLBUITask task, String name = null)
method setXY (line 569) | public void setXY(float x, float y)
class Element (line 611) | public class Element {
method element_setEnabled (line 617) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method element_isEnabled (line 620) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method element_setAsset (line 624) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method element_setPriority (line 628) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method element_getPriority (line 631) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
type ASSET_TYPE (line 636) | protected enum ASSET_TYPE
method Element (line 644) | internal Element(uint m_counter, IntPtr nodePtr)
class Container (line 717) | public class Container : Element {
method container_getViewOffsetX (line 720) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method container_setViewOffsetX (line 722) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method container_getViewOffsetY (line 725) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method container_setViewOffsetY (line 727) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method container_getRadioValue (line 730) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method Container (line 734) | internal Container(uint m_counter, IntPtr nodePtr):base(m_counter, nod...
class Selectable (line 810) | public class Selectable : Element {
method selectable_setClick (line 813) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method selectable_setAudio (line 817) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method selectable_setStick (line 821) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method selectable_isStickable (line 824) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method selectable_setSticked (line 828) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method selectable_isSticked (line 831) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method selectable_setRadio (line 835) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method selectable_getRadioID (line 838) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method Selectable (line 842) | internal Selectable(uint m_counter, IntPtr nodePtr):base(m_counter, no...
method setAudio (line 866) | public bool setAudio(String assetName, uint mode, float volume)
method setClickArea (line 879) | public void setClickArea(int x, int y, int width, int height)
class AnimationNode (line 974) | public class AnimationNode
method AnimationNode (line 979) | internal AnimationNode(uint m_counter, IntPtr nodePtr)
method setAnimation (line 985) | void setAnimation(AnimationInfo animationInfo)
FILE: CSharpVersion/EnginePrototype/FrameworkCore/Utils.cs
type Size (line 22) | public struct Size
type USize (line 28) | public struct USize
type FSize (line 34) | public struct FSize
class IClientRequest (line 40) | public class IClientRequest
type EVENT_TYPE (line 42) | public enum EVENT_TYPE {
class __FrameworkUtils (line 70) | public static class __FrameworkUtils
method Cpp_getClassIDByName (line 74) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method GetClassIDByName (line 80) | public static uint GetClassIDByName(String className)
method RegisterClass (line 86) | public static uint RegisterClass(String className/*, Type t*/)
class __MarshallingUtils (line 103) | public static class __MarshallingUtils
method NativeUtf8FromString (line 105) | public static IntPtr NativeUtf8FromString(String managedString)
method StringFromNativeUtf8 (line 119) | public static String StringFromNativeUtf8(IntPtr nativeUtf8)
method StringArrayFromNativeUtf8IntPtr (line 133) | public static String[] StringArrayFromNativeUtf8IntPtr(IntPtr nativeUt...
method NativeUtf8ArrayFromStringArray (line 164) | public static IntPtr[] NativeUtf8ArrayFromStringArray(String[] stringA...
method IntArrayFromIntPtr (line 177) | public static int[] IntArrayFromIntPtr(IntPtr ptr, int size)
FILE: CSharpVersion/EnginePrototype/FrameworkCore/WrapperReg.cs
class WrapperReg (line 32) | public class WrapperReg
method WrapperReg (line 40) | private WrapperReg()
method getInstance (line 52) | public static WrapperReg getInstance()
method registerGameObject (line 66) | public uint registerGameObject(GameObject pObj)
method unregisterGameObject (line 102) | public void unregisterGameObject(GameObject pObj)
method getObjectFromHandle (line 124) | public GameObject getObjectFromHandle(uint handle)
method display (line 136) | public void display()
FILE: CSharpVersion/EnginePrototype/Libs/CSAPP.cs
class CSAPP (line 21) | public static class CSAPP
method CKLBLuaLibAPP_callApplication (line 24) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
type APP_TYPE (line 29) | public enum APP_TYPE
method callApplication (line 35) | public static bool callApplication(APP_TYPE type, String addr, String ...
FILE: CSharpVersion/EnginePrototype/Libs/CSAsset.cs
class CSAsset (line 21) | public static class CSAsset
method CKLBLuaLibASSET_getImageSize (line 24) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibASSET_getBoundSize (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibASSET_getAssetInfo (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method getImageSize (line 35) | public static void getImageSize(String assetPath, ref int width, ref i...
method getImageSize (line 41) | public static void getImageSize(String assetPath, out Size size)
method getBoundSize (line 51) | public static void getBoundSize(String assetPath, ref float width, ref...
method getBoundSize (line 57) | public static void getBoundSize(String assetPath, out FSize size)
method getAssetInfo (line 67) | public static void getAssetInfo(String assetPath, ref int imgWidth, re...
method getAssetInfo (line 73) | public static void getAssetInfo(String assetPath, out Size imgSize, ou...
FILE: CSharpVersion/EnginePrototype/Libs/CSBin.cs
class CSBin (line 21) | public class CSBin : GameObject
method CKLBLuaLibBIN_open (line 25) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibBIN_close (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibBIN_peek (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibBIN_peek_u16 (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibBIN_peek_u32 (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CSBin (line 47) | public CSBin(String bin_asset)
method clearInternals (line 58) | internal override void clearInternals()
method peek (line 65) | public bool peek(int offset, ref int value)
method peek_u16 (line 74) | public bool peek_u16(int offset, ref uint value, bool f_bigendian = fa...
method peek_u32 (line 83) | public bool peek_u32(int offset, ref uint value, bool f_bigendian = fa...
FILE: CSharpVersion/EnginePrototype/Libs/CSDB.cs
class CSDB (line 21) | public class CSDB : GameObject
method CKLBLuaLibDB_dbopen (line 25) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibDB_dbclose (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibDB_closeAll (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibDB_query (line 33) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CSDB (line 41) | public CSDB(String db_asset, bool b_write = true, bool b_create = true)
method clearInternals (line 66) | internal override void clearInternals()
method closeAll (line 73) | public static void closeAll()
method query (line 78) | public void query(String sqlQuery, out String[] results)
FILE: CSharpVersion/EnginePrototype/Libs/CSData.cs
class CSData (line 21) | public class CSData : GameObject
method CKLBLuaLibDATA_cmdCreateData (line 25) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibDATA_cmdRegistData (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibDATA_cmdDelete (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CSData (line 43) | public CSData(uint ID)
method registerData (line 54) | public bool registerData(String nameAsset, ref uint pReturnHandle)
method clearInternals (line 63) | internal override void clearInternals()
FILE: CSharpVersion/EnginePrototype/Libs/CSDebug.cs
class CSDebug (line 21) | public static class CSDebug
method CKLBLuaLibDEBUG_startMenu (line 25) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibDEBUG_addItem (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibDEBUG_endMenu (line 32) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibDEBUG_removeMenu (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
type ESECTION_TYPE (line 63) | private enum ESECTION_TYPE
method setCallback (line 71) | public static void setCallback() { throw new CKLBExceptionNotImplement...
method startMenu (line 73) | public static void startMenu(uint maxCount, String caption, String key)
method addItemSwitch (line 80) | public static void addItemSwitch(String itemName, String itemKey, bool...
method addItemSelect (line 86) | public static void addItemSelect(String itemName, String itemKey, Stri...
method addItemNumber (line 92) | public static void addItemNumber(String itemName, String itemKey, int ...
method endMenu (line 98) | public static void endMenu()
method removeMenu (line 105) | public static void removeMenu(String key)
FILE: CSharpVersion/EnginePrototype/Libs/CSEng.cs
class CSEng (line 21) | public static class CSEng
method CKLBLuaLibENG_isRelease (line 24) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibENG_getPlatform (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibENG_getNanoTime (line 32) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibENG_startNanoTime (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibENG_endNanoTime (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibENG_getFrameID (line 41) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method getNanoTime (line 67) | public static void getNanoTime(ref int milli, ref int nano)
method startNanoTime (line 72) | public static void startNanoTime(int idx)
method endNanoTime (line 77) | public static void endNanoTime(int idx, ref int milli, ref int nano)
FILE: CSharpVersion/EnginePrototype/Libs/CSFont.cs
class CSFont (line 21) | public class CSFont : GameObject
method CKLBLuaLibFONT_createFont (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibFONT_removeFont (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibFONT_cmdGetTextInfo (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CSFont (line 42) | public CSFont(uint size, String name)
type STextInfo (line 55) | [StructLayout(LayoutKind.Sequential, Pack = 1)]
method clearInternals (line 105) | internal override void clearInternals()
method getTextInfo (line 112) | public void getTextInfo(String text, out STextInfo info)
FILE: CSharpVersion/EnginePrototype/Libs/CSGL.cs
class CSGL (line 21) | public static class CSGL
method CKLBLuaLibGL_GLClearColor (line 25) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibGL_GLSetResolution (line 28) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibGL_GLCreateScreenAsset (line 32) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibGL_GLDoScreenShot (line 37) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibGL_GLFreeScreenAsset (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibGL_SGGetGuardBand (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibGL_SGSetGuardBand (line 48) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method clearColor (line 52) | public static void clearColor(float r, float g, float b, float a)
method setResolution (line 57) | public static void setResolution(int width, int height)
method createScreenAsset (line 62) | public static bool createScreenAsset(String name)
method doScreenShot (line 67) | public static bool doScreenShot(String name)
method freeScreenAsset (line 72) | public static void freeScreenAsset(String name)
method getGuardBand (line 77) | public static void getGuardBand(ref float leftBorder, ref float rightB...
method setGuardBand (line 82) | public static void setGuardBand(float leftBorder, float rightBorder, f...
FILE: CSharpVersion/EnginePrototype/Libs/CSKey.cs
class CSKey (line 21) | public static class CSKey
method CKLBLuaLibKEY_genUserID (line 25) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibKEY_genUserPW (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibKEY_setSecureID (line 33) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibKEY_setSecurePW (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibKEY_getSecureID (line 44) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibKEY_getSecurePW (line 49) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibKEY_delSecureID (line 53) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibKEY_delSecurePW (line 58) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method genUserID (line 63) | public static int genUserID(out String userId, uint bufSize = 1024)
method genUserPW (line 71) | public static int genUserPW(String userId, out String passwd, uint buf...
method setSecureID (line 79) | public static bool setSecureID(String serviceName, String userId)
method setSecurePW (line 84) | public static bool setSecurePW(String serviceName, String passwd)
method getSecureID (line 89) | public static int getSecureID(String serviceName, out String secureID,...
method getSecurePW (line 97) | public static int getSecurePW(String serviceName, out String securePW,...
method delSecureID (line 105) | public static bool delSecureID(String serviceName)
method delSecurePW (line 110) | public static bool delSecurePW(String serviceName)
FILE: CSharpVersion/EnginePrototype/Libs/CSLang.cs
class CSLang (line 21) | public static class CSLang
method CKLBLuaLibLANG_addString (line 25) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibLANG_getString (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibLANG_removeString (line 32) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibLANG_useDB (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibLANG_loadGroup (line 39) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method addString (line 44) | public static bool addString(String id, String str)
method getString (line 48) | public static String getString(String id)
method removeString (line 52) | public static void removeString(String id)
method useDB (line 56) | public static bool useDB(String dbFile, String table, String keyF, Str...
method loadGroup (line 60) | public static bool loadGroup(String groupId)
FILE: CSharpVersion/EnginePrototype/Libs/CSMatrix.cs
class CSMatrix (line 22) | public class CSMatrix : ICloneable
class CSVector (line 24) | public class CSVector : ICloneable
method CSVector (line 33) | public CSVector(float[] vector)
method Clone (line 38) | public object Clone()
method CSMatrix (line 53) | public CSMatrix(float[] matrix = null)
method Clone (line 72) | public object Clone()
method Copy (line 77) | public CSMatrix Copy()
method Transposed (line 82) | public CSMatrix Transposed()
method Mul (line 93) | public CSMatrix Mul(CSMatrix mat)
method Mul (line 112) | public CSVector Mul(CSVector vect)
method fabs (line 128) | public static float fabs(float f) { return f >= 0 ? f : f*(-1); }
method Inverse (line 130) | public CSMatrix Inverse()
FILE: CSharpVersion/EnginePrototype/Libs/CSRES.cs
class CSRES (line 21) | public static class CSRES
method CKLBLuaLibRES_dumpSceneGraph (line 24) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibRES_dumpRendering (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibRES_dumpAssets (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibRES_dumpDataSet (line 33) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibRES_dumpTexturePacker (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibRES_dumpGeometryCost (line 39) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method dumpSceneGraph (line 43) | public static void dumpSceneGraph(CKLBUITask task = null)
method dumpRendering (line 52) | public static void dumpRendering(bool detailed = false)
method dumpAssets (line 57) | public static void dumpAssets()
method dumpDataSet (line 62) | public static void dumpDataSet()
method dumpTexturePacker (line 67) | public static void dumpTexturePacker(bool detailed = false)
method dumpGeometryCost (line 72) | public static void dumpGeometryCost(bool detailed = false)
FILE: CSharpVersion/EnginePrototype/Libs/CSSound.cs
class CSSound (line 21) | public class CSSound : GameObject
method CKLBLuaLibSOUND_cmdSoundOpen (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdSoundSetBufSize (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdSoundClose (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_removeSoundAll (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdSoundPlay (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdSoundStop (line 46) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdSoundVolume (line 50) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdSoundPan (line 54) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdSoundPause (line 58) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdSoundResume (line 62) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdSoundSeek (line 66) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdSoundTell (line 70) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdSoundState (line 74) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdVolumeBGM (line 77) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdVolumeSE (line 80) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdGetLength (line 84) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaLibSOUND_cmdSetFade (line 88) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CSSound (line 96) | public CSSound(String sound_asset, bool bgmMode = false)
type EBUF_SIZE (line 107) | public enum EBUF_SIZE
method setBufSize (line 123) | public bool setBufSize(EBUF_SIZE size)
method clearInternals (line 171) | internal override void clearInternals()
method closeAll (line 178) | public static void closeAll()
method play (line 183) | public void play(uint fade_msec = 0, float tgtVol = 1.0f, float global...
method stop (line 192) | public void stop(uint fade_msec = 0, float tgtVol = 0.0f)
method pause (line 201) | public void pause()
method resume (line 210) | public void resume()
method seek (line 219) | public void seek(int milliseconds)
method tell (line 228) | public int tell()
method state (line 237) | public int state()
method setFade (line 246) | public void setFade(int millisec, float tgtVol)
method volumeBGM (line 255) | public static void volumeBGM(float volume)
method volumeSE (line 260) | public static void volumeSE(float volume)
FILE: CSharpVersion/EnginePrototype/Libs/CSSystem.cs
class CSSystem (line 21) | public static class CSSystem
method CKLBLuaEnv_cmdLogging (line 25) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaEnv_cmdExit (line 28) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaEnv_cmdSystemInfo (line 31) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBLuaEnv_cmdSystemReboot (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
type SystemInfo (line 38) | public struct SystemInfo
method logging (line 44) | public static void logging(String msg)
method exitGame (line 49) | public static void exitGame()
method getInfo (line 54) | public static void getInfo(out SystemInfo sysInfos)
method reboot (line 62) | public static void reboot()
FILE: CSharpVersion/EnginePrototype/Libs/CSUI.cs
class CSUI (line 21) | public static class CSUI
type E_POSITION (line 23) | public enum E_POSITION {
method CKLBLuaLibUI_calcPosition (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method calcPosition (line 38) | public static void calcPosition(float x, float y, float w, float h, E_...
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBAsyncLoader.cs
class CKLBAsyncLoader (line 21) | public class CKLBAsyncLoader : CKLBTask
method CKLBAsyncLoader_create (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBAsyncLoader_getProcessCount (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBAsyncLoader_getTotalCount (line 33) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBAsyncLoader (line 40) | public CKLBAsyncLoader(CKLBTask pParent, String[] assets, uint dataset...
method CKLBAsyncLoader (line 51) | public CKLBAsyncLoader() : base(s_classID) { }
method doSetupCallbacks (line 60) | protected override void doSetupCallbacks()
method setDelegate (line 65) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 70) | public virtual void callBackFunction(uint loaded, uint total)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBGenericTask.cs
class CKLBGenericTask (line 21) | public class CKLBGenericTask : CKLBTask
method CKLBGenericTask_create (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBGenericTask (line 34) | public CKLBGenericTask(CKLBTask parent, CKLBTask.ETASK_PHASE phase, Ex...
method CKLBGenericTask (line 44) | public CKLBGenericTask() : base(s_classID) { }
method doSetupCallbacks (line 55) | protected override void doSetupCallbacks()
method setDelegate (line 61) | public override void setDelegate(Delegate anyDelegate, String delegate...
method executeCallBackFunction (line 76) | public virtual void executeCallBackFunction(uint deltaTime)
method dieCallBackFunction (line 88) | public virtual void dieCallBackFunction()
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBIntervalTimer.cs
class CKLBIntervalTimer (line 21) | public class CKLBIntervalTimer : CKLBUITask
method CKLBIntervalTimer_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBIntervalTimer_getTimerID (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBIntervalTimer_setTimerID (line 31) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBIntervalTimer_getRepeat (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBIntervalTimer_setRepeat (line 37) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBIntervalTimer_getInterval (line 40) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBIntervalTimer_setInterval (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBIntervalTimer_getMode (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBIntervalTimer (line 52) | public CKLBIntervalTimer(CKLBTask parent, uint interval, CallBack call...
method CKLBIntervalTimer (line 63) | public CKLBIntervalTimer() : base(s_classID) { }
method doSetupCallbacks (line 72) | protected override void doSetupCallbacks()
method setDelegate (line 77) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 82) | public virtual void callBackFunction()
type ETIMERMODE (line 93) | public enum ETIMERMODE : byte
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBNetAPI.cs
class CKLBNetAPI (line 21) | public class CKLBNetAPI : CKLBTask
method CKLBNetAPI_create (line 31) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBNetAPI_startUp (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBNetAPI_login (line 39) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBNetAPI_cancel (line 43) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBNetAPI_cancelAll (line 47) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBNetAPI_watchMaintenance (line 50) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBNetAPI_debugHdr (line 54) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBNetAPI_genCmdNumID (line 59) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBNetAPI_sendHTTP (line 64) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBNetAPI (line 72) | public CKLBNetAPI(CKLBTask parent, String apiUrl, String clientVersion...
method CKLBNetAPI (line 85) | public CKLBNetAPI() : base(s_classID) { }
method doSetupCallbacks (line 96) | protected override void doSetupCallbacks()
method setDelegate (line 102) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 111) | public virtual bool callBackFunction(int uniq, int msg, int status, In...
method callBackVersionUpFunction (line 120) | public virtual void callBackVersionUpFunction(IntPtr clientVer, IntPtr...
type ESTATUS (line 130) | public enum ESTATUS
method startUp (line 150) | public bool startUp(ref uint session, String loginID, String password,...
method login (line 160) | public bool login(ref uint session, String loginID, String password, u...
method cancel (line 170) | public bool cancel(uint session)
method send (line 179) | public bool send(ref uint session, String json, String apiURL = "/api"...
method cancelAll (line 188) | public void cancelAll()
method watchMaintenance (line 197) | public bool watchMaintenance(ref uint session, uint timeout = 0)
method debugHdr (line 206) | public void debugHdr(bool debugflag)
method genCmdNumID (line 215) | public void genCmdNumID(ref String numID, String body, int serial)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBStoreService.cs
class CKLBStoreService (line 21) | public class CKLBStoreService : CKLBTask
method CKLBStoreService_create (line 25) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBStoreService_buyItems (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBStoreService_getProducts (line 33) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBStoreService (line 40) | public CKLBStoreService(CallBack callback)
method CKLBStoreService (line 50) | public CKLBStoreService() : base(s_classID) { }
method doSetupCallbacks (line 59) | protected override void doSetupCallbacks()
method setDelegate (line 64) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 69) | public virtual void callBackFunction(/* IClientRequest.EVENT_TYPE */ u...
method buyItems (line 79) | public void buyItems(String item)
method getProducts (line 88) | public void getProducts(String json, bool currency) {
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBTask.cs
class CKLBTask (line 46) | public class CKLBTask : GameObject
method Task_kill (line 49) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method Task_setStageTask (line 52) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method Task_clearStageTask (line 55) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method Task_setPause (line 58) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method Task_setManagerPause (line 61) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method Task_interposeTimer (line 65) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method Task_isKill (line 68) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBTask (line 75) | internal CKLBTask(uint classID) : base(classID) {
method doSetupCallbacks (line 86) | protected override void doSetupCallbacks()
method setOnDieCallBack (line 91) | public void setOnDieCallBack(onDieCallBack anyDelegate)
method onDieCallBackFunction (line 96) | public virtual void onDieCallBackFunction()
type ETASK_PHASE (line 112) | public enum ETASK_PHASE
method kill (line 146) | public void kill()
method isKill (line 159) | public bool isKill()
method Dispose (line 170) | public override void Dispose()
method setPause (line 183) | public void setPause(bool bPause, bool bRecursive)
method setLifeTime (line 197) | public void setLifeTime(CKLBIntervalTimer.ETIMERMODE mode, uint time)
method stageOnly (line 217) | public void stageOnly()
method clearStage (line 231) | public static void clearStage()
method setManagerPause (line 241) | public static void setManagerPause(bool bPause)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUICanvas.cs
class CKLBUICanvas (line 21) | public class CKLBUICanvas : CKLBUITask
method CKLBUICanvas_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas_getOrder (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas_setOrder (line 31) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas_getIdxMax (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas_addResource (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas_setFreeze (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas_drawImage (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas_drawImageScale (line 47) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas_fillRect (line 49) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas_startDynamicSection (line 52) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas_endDynamicSection (line 54) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas_dynamicSectionTranslate (line 57) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas_dynamicSectionColor (line 59) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUICanvas (line 66) | public CKLBUICanvas(CKLBUITask parent, uint order, float x, float y, u...
method CKLBUICanvas (line 76) | public CKLBUICanvas() : base(s_classID) { }
method doSetupCallbacks (line 84) | protected override void doSetupCallbacks()
method setDelegate (line 89) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 94) | public virtual void callBackFunction()
method addResource (line 148) | public bool addResource(String asset)
method drawImage (line 160) | public void drawImage(float x, float y, uint idx, uint color)
method drawImageScale (line 169) | public void drawImageScale(float x, float y, float scale, uint idx, ui...
method fillRect (line 178) | public void fillRect(float x, float y, float w, float h, uint color)
method startDynamicSection (line 187) | public void startDynamicSection(uint idx)
method endDynamicSection (line 196) | public void endDynamicSection(uint idx)
method dynamicSectionTranslate (line 205) | public void dynamicSectionTranslate(uint idx, float deltaX, float deltaY)
method dynamicSectionColor (line 214) | public void dynamicSectionColor(uint idx, uint color)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIClip.cs
class CKLBUIClip (line 21) | public class CKLBUIClip : CKLBUITask
method CKLBUIClip_create (line 25) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIClip_getOrder (line 28) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIClip_setOrder (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIClip_getMaxOdr (line 33) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIClip_setMaxOdr (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIClip_getWidth (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIClip_setWidth (line 40) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIClip_getHeight (line 43) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIClip_setHeight (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIClip_setPosition (line 48) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIClip_setSize (line 51) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIClip (line 59) | public CKLBUIClip(CKLBUITask parent, uint baseOrder, uint maxOrder, fl...
method CKLBUIClip (line 69) | public CKLBUIClip() : base(s_classID) { }
method getSize (line 149) | public void getSize(out FSize size)
method setSize (line 158) | public void setSize(FSize size)
method setSize (line 166) | public void setSize(float width, float height)
method setPosition (line 175) | public void setPosition(float x, float y)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIControl.cs
class CKLBUIControl (line 21) | public class CKLBUIControl : CKLBUITask
method CKLBUIControl_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIControl_setGroup (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIControl_setMask (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIControl_lock (line 37) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIControl (line 45) | public CKLBUIControl(CKLBTask parent, OnClickCallBack onClickCallBack,...
method CKLBUIControl (line 56) | public CKLBUIControl() : base(s_classID) { }
method doSetupCallbacks (line 74) | protected override void doSetupCallbacks()
method setDelegate (line 83) | public override void setDelegate(Delegate anyDelegate, String delegate...
method onClickCallBackFunction (line 134) | public virtual void onClickCallBackFunction(int x, int y)
method onDragCallBackFunction (line 145) | public virtual void onDragCallBackFunction(uint /*EMODE*/ mode, int x,...
method onPinchCallBackFunction (line 156) | public virtual void onPinchCallBackFunction(uint /*EMODE*/ mode, float...
method onDblClickCallBackFunction (line 167) | public virtual void onDblClickCallBackFunction(int x, int y)
method onLongTapCallBackFunction (line 178) | public virtual void onLongTapCallBackFunction(uint elapsedTime, int x,...
type EMODE (line 192) | public enum EMODE : uint
type EMASK (line 198) | public enum EMASK : ushort {
method setGroup (line 206) | public bool setGroup(String groupName)
method setMask (line 214) | public void setMask(EMASK mask)
method setLock (line 222) | public void setLock(bool lockBool)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIDebugItem.cs
class CKLBUIDebugItem (line 21) | public class CKLBUIDebugItem : CKLBUITask
method CKLBUIDebugItem_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDebugItem_getOrder (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDebugItem_setOrder (line 31) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDebugItem_getColor (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDebugItem_setColor (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDebugItem_getFont (line 40) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIDebugItem_setFont (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIDebugItem_getSize (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDebugItem_setSize (line 47) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDebugItem_getText (line 51) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIDebugItem_setText (line 53) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIDebugItem (line 62) | public CKLBUIDebugItem(CKLBUITask parent, uint order, float x, float y...
method CKLBUIDebugItem (line 72) | public CKLBUIDebugItem() : base(s_classID) { }
method doSetupCallbacks (line 82) | protected override void doSetupCallbacks()
method setDelegate (line 87) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 92) | public virtual void callBackFunction(uint cmdID)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIDragIcon.cs
class CKLBUIDragIcon (line 21) | public class CKLBUIDragIcon : CKLBUITask
method CKLBUIDragIcon_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon_getOrder (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon_getAsset (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon_getDrag (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon_getFlags (line 41) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon_setFlags (line 43) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon_getEnable (line 46) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon_setEnable (line 49) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon_getDragScaleX (line 52) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon_setDragScaleX (line 54) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon_getDragScaleY (line 57) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon_setDragScaleY (line 59) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon_dragArea (line 62) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIDragIcon (line 70) | public CKLBUIDragIcon( CKLBUITask parent,
method CKLBUIDragIcon (line 84) | public CKLBUIDragIcon() : base(s_classID) { }
method doSetupCallbacks (line 94) | protected override void doSetupCallbacks()
method setDelegate (line 99) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 104) | public virtual void callBackFunction(uint type, int x, int y)
type Area (line 115) | [StructLayout(LayoutKind.Sequential, Pack = 1)]
method Area (line 118) | public Area(int _x, int _y, int _width, int _height)
method setValues (line 131) | public void setValues(int _x, int _y, int _width, int _height)
type ESTEP (line 140) | public enum ESTEP
type EFLAGS (line 146) | public enum EFLAGS : uint
method dragArea (line 263) | public void dragArea(Area area)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIForm.cs
class CKLBUIForm (line 21) | public class CKLBUIForm : CKLBUITask
method CKLBUIForm_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_getAsset (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_getOrder (line 32) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_getExclusive (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_setExclusive (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_getIsFile (line 41) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_setEnable (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_existNode (line 49) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_inputEnable (line 53) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_animation (line 56) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_animEnter (line 60) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_animLeave (line 64) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_isAnim (line 68) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_skipAnim (line 72) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_setGroup (line 76) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm_setGlobalVolume (line 80) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIForm (line 88) | public CKLBUIForm(CKLBUITask parent, uint order, int x, int y, bool as...
method CKLBUIForm (line 97) | public CKLBUIForm() : base(s_classID) { }
method doSetupCallbacks (line 109) | protected override void doSetupCallbacks()
method setDelegate (line 115) | public override void setDelegate(Delegate anyDelegate, String delegate...
method animCallBackFunction (line 127) | public virtual void animCallBackFunction(IntPtr name, uint id)
method selectableCallbackFunction (line 137) | public virtual void selectableCallbackFunction(IntPtr name, int type, ...
method setEnabled (line 204) | public void setEnabled(bool isEnabled)
method existNode (line 213) | public bool existNode(String name)
method inputEnable (line 222) | public void inputEnable(bool bEnable)
method animation (line 231) | public bool animation(String animationName, bool blend = false)
method isRunningAnimation (line 240) | public bool isRunningAnimation(String animationName = null)
method skipAnim (line 249) | public bool skipAnim(String animationName = null)
method animEnter (line 258) | public bool animEnter()
method animLeave (line 267) | public bool animLeave()
method setGroup (line 276) | public bool setGroup(String groupName)
method setGlobalVolume (line 285) | public void setGlobalVolume(float volume)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIFreeVertItem.cs
class CKLBUIFreeVertItem (line 22) | public class CKLBUIFreeVertItem : CKLBUITask
method CKLBUIFreeVertItem_create (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIFreeVertItem_getOrder (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIFreeVertItem_setOrder (line 32) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIFreeVertItem_getAsset (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIFreeVertItem_setVertices (line 39) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIFreeVertItem_setColors (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIFreeVertItem_setVertCol (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIFreeVertItem_setUV (line 48) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIFreeVertItem (line 56) | public CKLBUIFreeVertItem(CKLBUITask parent, uint order, float x, floa...
method CKLBUIFreeVertItem (line 64) | public CKLBUIFreeVertItem() : base(s_classID) { }
method setVertices (line 98) | public void setVertices(float[] coords)
method setColors (line 110) | public void setColors(uint[] colors)
method setVertCol (line 121) | public void setVertCol(int idx, uint argb)
method setUv (line 132) | public void setUv(float[] uv)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIGroup.cs
class CKLBUIGroup (line 21) | public class CKLBUIGroup : CKLBUITask
method CKLBUIGroup_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIGroup_setAnimCallback (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIGroup_setAnimation (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIGroup_isAnim (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIGroup_skipAnim (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIGroup (line 51) | public CKLBUIGroup(CKLBUITask parent, float x, float y)
method CKLBUIGroup (line 60) | public CKLBUIGroup() : base(s_classID) { }
method doSetupCallbacks (line 70) | protected override void doSetupCallbacks()
method setDelegate (line 75) | public override void setDelegate(Delegate anyDelegate, String delegate...
method animCallBackFunction (line 88) | public virtual void animCallBackFunction(IntPtr name, uint id)
method setAnimation (line 102) | public bool setAnimation(String animationName, bool blendFlag = false)
method isRunningAnimation (line 110) | public bool isRunningAnimation(String animationName = null)
method skipAnim (line 118) | public bool skipAnim(String animationName = null)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUILabel.cs
class CKLBUILabel (line 21) | public class CKLBUILabel : CKLBUITask
method CKLBUILabel_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUILabel_getOrder (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUILabel_setOrder (line 31) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUILabel_getAlign (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUILabel_setAlign (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUILabel_getText (line 40) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUILabel_setText (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUILabel_getColor (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUILabel_setColor (line 47) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUILabel_getFont (line 51) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUILabel_setFont (line 53) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUILabel_getFontSize (line 56) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUILabel_setFontSize (line 58) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUILabel_setPosition (line 61) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUILabel (line 69) | public CKLBUILabel(CKLBUITask parent, uint order, float x, float y, ui...
method CKLBUILabel (line 78) | public CKLBUILabel() : base(s_classID) { Console.WriteLine("YOLO"); }
type EALIGN (line 82) | public enum EALIGN : uint
method setFont (line 152) | public void setFont(String name, uint size)
method setPosition (line 219) | public void setPosition(float x, float y)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIList.cs
class CKLBUIList (line 22) | public class CKLBUIList : CKLBUITask
method CKLBUIList_create (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_getWidth (line 31) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_setWidth (line 33) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_getHeight (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_setHeight (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_getStepX (line 41) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_setStepX (line 43) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_getStepY (line 46) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_setStepY (line 48) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_getOrder (line 51) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_setOrder (line 53) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_getMaxOrder (line 56) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_setMaxOrder (line 58) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_getVertical (line 61) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_setVertical (line 64) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_getItems (line 67) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_getMarginTop (line 70) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_setMarginTop (line 72) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_getMarginBottom (line 75) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_setMarginBottom (line 77) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_getDefaultScroll (line 80) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_setDefaultScroll (line 82) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdItemRemove (line 85) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdItemMove (line 89) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdSetMargin (line 92) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdGetPosition (line 95) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdSetPosition (line 97) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdSetItemID (line 100) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdSearchID (line 103) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdSetItemPos (line 106) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdSetLimitClip (line 110) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdGetLimit (line 113) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdSetLimitArea (line 116) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdChangeStep (line 120) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdInputEnable (line 123) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdExistNode (line 127) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdAnimationItem (line 132) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIList_cmdAnimationAll (line 137) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIList_cmdItemAnimSkip (line 142) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIList_cmdAllAnimSkip (line 147) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIList_cmdSetGroup (line 152) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIList_setLoop (line 155) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdSetInitial (line 158) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_useScrollBar (line 162) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdFWModeConfig (line 166) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdSetItemMode (line 169) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdAddRecords (line 173) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdSelectScrMgr (line 178) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIList_cmdSetClip (line 182) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList_cmdItemAdd (line 186) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIList_cmdItemAdd2 (line 191) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIList_cmdInsertItem (line 196) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIList_cmdInsertItem2 (line 201) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIList_cmdRemoveSelection (line 206) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIList_setDragRect (line 210) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIList (line 218) | public CKLBUIList( CKLBUITask parent, uint base_priority, uint max_or...
method CKLBUIList (line 230) | public CKLBUIList() : base(s_classID) { }
method doSetupCallbacks (line 248) | protected override void doSetupCallbacks()
method setDelegate (line 257) | public override void setDelegate(Delegate anyDelegate, String delegate...
method dragCallBackFunction (line 274) | public virtual void dragCallBackFunction(uint type, int x, int y, int ...
method limitCallBackFunction (line 283) | public virtual void limitCallBackFunction(uint type, uint itemCount, i...
method dynamicCallBackFunction (line 292) | public virtual void dynamicCallBackFunction(int index, int id)
method scrollbarCallBackFunction (line 301) | public virtual void scrollbarCallBackFunction(uint type, int pos)
method animCallBackFunction (line 311) | public virtual void animCallBackFunction(IntPtr name, uint id)
type EPOSITION_MODE (line 322) | public enum EPOSITION_MODE : int
type ESCROLLBAR_VALUE (line 330) | public enum ESCROLLBAR_VALUE : int
type EITEM_MODE (line 337) | public enum EITEM_MODE : int {
method getSize (line 381) | public void getSize(out USize size)
method setSize (line 390) | public void setSize(USize size)
method setSize (line 399) | public void setSize(uint width, uint height)
method itemAdd (line 605) | public void itemAdd(String asset)
method itemAdd (line 613) | public void itemAdd(String asset, int step, int id = -1)
method itemInsert (line 622) | public void itemInsert(String asset, int index)
method itemInsert (line 630) | public void itemInsert(String asset, int index, int step, int id = -1)
method itemRemove (line 639) | public bool itemRemove(int index)
method itemMove (line 648) | public void itemMove(int src, int dst)
method itemRemoveSelection (line 657) | public void itemRemoveSelection(int[] indexes)
method setMargin (line 666) | public void setMargin(int margin_top, int margin_bottom)
method setItemPosition (line 675) | public void setItemPosition(EPOSITION_MODE positionMode, int index, in...
method changeStep (line 684) | public void changeStep(int index, int newStep)
method setLimitClip (line 693) | public void setLimitClip(bool limitClipEnable)
method setLimitClip (line 701) | public void setLimitClip(bool limitClipEnable, LimitCallBack limitCall...
method setLimitArea (line 711) | public bool setLimitArea(int size)
method setInputEnable (line 720) | public void setInputEnable(bool enableFlag)
method existNode (line 729) | public bool existNode(int index, String name)
method animationItem (line 741) | public bool animationItem(int index, String animationName, bool blendF...
method animationAll (line 750) | public bool animationAll(String animationName, bool blendFlag = false)
method useScrollbar (line 759) | public bool useScrollbar(uint order, bool side, int lineWeight, String...
method useScrollbar (line 767) | public bool useScrollbar(uint order, bool side, int lineWeight, String...
method setItemID (line 777) | public void setItemID(int index, int id)
method searchID (line 786) | public int searchID(int index)
method selectScrMgr (line 795) | public bool selectScrMgr(String managerName, int[] optParams = null)
method itemAnimSkip (line 808) | public bool itemAnimSkip(int idx, String name)
method allAnimSkip (line 817) | public bool allAnimSkip(String groupName = null)
method addRecords (line 826) | public bool addRecords(int insIdx, String tpForm, String dbRecords, in...
method setInitial (line 835) | public int setInitial(int pos)
method fwModeConfig (line 844) | public void fwModeConfig(int itemStep, int maxItems)
method fwItemAdd (line 853) | public void fwItemAdd()
method fwItemInsertTop (line 858) | public void fwItemInsertTop()
method setItemMode (line 863) | public bool setItemMode(EITEM_MODE mode)
method setItemMode (line 871) | public bool setItemMode(EITEM_MODE mode, DynamicCallBack dynamicCallback)
method setPosition (line 881) | public int setPosition(int pos, int dir = 0)
method setGroup (line 890) | public void setGroup(String groupName)
method setClip (line 899) | public void setClip(uint orderBegin, uint orderEnd, short clipX, short...
method setDragRect (line 908) | public void setDragRect(int left, int top, int right, int bottom)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIMoviePlayer.cs
class CKLBUIMoviePlayer (line 21) | public class CKLBUIMoviePlayer : CKLBUITask
method CKLBUIMoviePlayer_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMoviePlayer_getWidth (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMoviePlayer_setWidth (line 31) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMoviePlayer_getHeight (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMoviePlayer_setHeight (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMoviePlayer_getText (line 40) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIMoviePlayer_setText (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMoviePlayer_moviePlay (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMoviePlayer_movieStop (line 48) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMoviePlayer_moviePause (line 51) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMoviePlayer_movieResume (line 54) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMoviePlayer (line 62) | public CKLBUIMoviePlayer(CKLBUITask parent, bool background_mode, floa...
method CKLBUIMoviePlayer (line 72) | public CKLBUIMoviePlayer() : base(s_classID) { }
method doSetupCallbacks (line 82) | protected override void doSetupCallbacks()
method setDelegate (line 87) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 92) | public virtual void callBackFunction()
method getSize (line 139) | public void getSize(out USize size)
method setSize (line 149) | public void setSize(USize size)
method setSize (line 159) | public void setSize(uint width, uint height)
method play (line 182) | public void play()
method pause (line 189) | public void pause()
method stop (line 196) | public void stop()
method resume (line 203) | public void resume()
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIMultiImgItem.cs
class CKLBUIMultiImgItem (line 22) | public class CKLBUIMultiImgItem : CKLBUITask
method CKLBUIMultiImgItem_create (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMultiImgItem_getIndexMax (line 33) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMultiImgItem_setIndexMax (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMultiImgItem_getOrder (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMultiImgItem_setOrder (line 40) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMultiImgItem_getIndex (line 43) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMultiImgItem_setIndex (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMultiImgItem_changeAssets (line 50) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIMultiImgItem (line 59) | public CKLBUIMultiImgItem( CKLBUITask parent, uint order, float x, fl...
method CKLBUIMultiImgItem (line 74) | public CKLBUIMultiImgItem() : base(s_classID) { }
method changeAssets (line 136) | public bool changeAssets(String[] pArrayAsset, uint[] pArrayIndexes)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIPieChart.cs
class CKLBUIPieChart (line 21) | public class CKLBUIPieChart : CKLBUITask
method CKLBUIPieChart_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPieChart_getStart (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPieChart_setStart (line 32) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPieChart_getEnd (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPieChart_setEnd (line 37) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPieChart_getValue (line 40) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPieChart_setValue (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPieChart_getAnim (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPieChart_getOrder (line 48) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPieChart_changeAsset (line 52) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPieChart (line 61) | public CKLBUIPieChart(CKLBUITask parent, uint order, float x, float y,...
method CKLBUIPieChart (line 70) | public CKLBUIPieChart() : base(s_classID) { }
method changeAsset (line 156) | public bool changeAsset(String assetName)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIPolyline.cs
class CKLBUIPolyline (line 21) | public class CKLBUIPolyline : CKLBUITask
method CKLBUIPolyline_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPolyline_getMaxPoint (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPolyline_setMaxPoint (line 31) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPolyline_getOrder (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPolyline_getPointCount (line 37) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPolyline_setPointCount (line 39) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPolyline_setPoint (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPolyline_getColor (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPolyline_setColor (line 47) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIPolyline (line 55) | public CKLBUIPolyline(CKLBUITask parent, uint order, uint maxPoint) : ...
method CKLBUIPolyline (line 63) | public CKLBUIPolyline() : base(s_classID) { }
method setPoint (line 141) | public void setPoint(uint point_index, float x, float y)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIProgressBar.cs
class CKLBUIProgressBar (line 21) | public class CKLBUIProgressBar : CKLBUITask
method CKLBUIProgressBar_create (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getOrder (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_setOrder (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getWidth (line 39) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_setWidth (line 41) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getHeight (line 44) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_setHeight (line 46) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getVertical (line 49) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_setVertical (line 52) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getAnimTime (line 55) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_setAnimTime (line 57) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getStart (line 60) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_setStart (line 62) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getEnd (line 65) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_setEnd (line 67) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getValue (line 70) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_setValue (line 72) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getImgEmpty (line 76) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIProgressBar_setImgEmpty (line 79) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getImgFull (line 83) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_setImgFull (line 86) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getImgFilter (line 90) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIProgressBar_setImgFilter (line 93) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_reset (line 96) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getFilterVisible (line 99) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_setFilterVisible (line 102) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_getFilterColor (line 105) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_setFilterColor (line 107) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar_setFilterAnim (line 110) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIProgressBar (line 120) | public CKLBUIProgressBar( CKLBUITask parent,
method CKLBUIProgressBar (line 137) | public CKLBUIProgressBar() : base(s_classID) { }
method getSize (line 198) | public void getSize(out FSize size)
method setSize (line 207) | public void setSize(FSize size)
method setSize (line 216) | public void setSize(float width, float height)
method reset (line 416) | public void reset()
method complete (line 424) | public void complete()
method setFilterAnim (line 433) | public bool setFilterAnim(bool bColAnim, uint argb1 = 0xffffffff, uint...
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIRubberBand.cs
class CKLBUIRubberBand (line 21) | public class CKLBUIRubberBand : CKLBUITask
method CKLBUIRubberBand_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_getOriginX (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_setOriginX (line 32) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_getOriginY (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_setOriginY (line 37) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_getPointX (line 40) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_setPointX (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_getPointY (line 45) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_setPointY (line 47) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_getFAnim (line 50) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_setFAnim (line 53) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_getFAnimRT (line 56) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_setFAnimRT (line 59) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_getAnimTime (line 62) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_setAnimTime (line 64) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_getOrder (line 67) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand_getAssetOrigin (line 71) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIRubberBand_getAssetJoint (line 75) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIRubberBand_getAssetPoint (line 79) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIRubberBand_setOrder (line 82) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIRubberBand (line 91) | public CKLBUIRubberBand(CKLBUITask parent, uint order, float origin_x,...
method CKLBUIRubberBand (line 105) | public CKLBUIRubberBand() : base(s_classID) { }
method setOrder (line 273) | public void setOrder(uint orderOrigin, uint orderJoint, uint orderPoint)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUISWFPlayer.cs
class CKLBUISWFPlayer (line 21) | public class CKLBUISWFPlayer : CKLBUITask
method CKLBUISWFPlayer_create (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISWFPlayer_getPlay (line 32) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISWFPlayer_setPlay (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISWFPlayer_getOrder (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISWFPlayer_setOrder (line 40) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISWFPlayer_gotoFrame (line 44) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUISWFPlayer_getFrameRate (line 47) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISWFPlayer_setFrameRate (line 49) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISWFPlayer_isAnimating (line 52) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISWFPlayer_setFrameRateScale (line 56) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISWFPlayer_getAsset (line 60) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUISWFPlayer_getMovieName (line 64) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUISWFPlayer_getVolume (line 67) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISWFPlayer_setVolume (line 69) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISWFPlayer (line 77) | public CKLBUISWFPlayer(CKLBUITask parent, uint order, float x, float y...
method CKLBUISWFPlayer (line 89) | public CKLBUISWFPlayer() : base(s_classID) { }
method doSetupCallbacks (line 99) | protected override void doSetupCallbacks()
method setDelegate (line 104) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 110) | public virtual void callBackFunction(IntPtr label)
method play (line 234) | public void play()
method stop (line 242) | public void stop()
method goToFrame (line 250) | public void goToFrame(String label)
method setFramerateScale (line 258) | public void setFramerateScale(float scale)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIScale9.cs
class CKLBUIScale9 (line 21) | public class CKLBUIScale9 : CKLBUITask
method CKLBUIScale9_create (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScale9_getWidth (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScale9_setWidth (line 32) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScale9_getHeight (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScale9_setHeight (line 37) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScale9_getOrder (line 40) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScale9_setOrder (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScale9_getAsset (line 46) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIScale9_setAsset (line 48) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScale9 (line 57) | public CKLBUIScale9(CKLBUITask parent, uint order, float x, float y, i...
method CKLBUIScale9 (line 66) | public CKLBUIScale9() : base(s_classID) { }
method getSize (line 127) | public void getSize(out Size size)
method setSize (line 136) | public void setSize(Size size)
method setSize (line 145) | public void setSize(int width, int height)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIScore.cs
class AnimationInfo (line 22) | public class AnimationInfo {
type EIDX (line 24) | private enum EIDX : uint {
method createAlphaAnimation (line 44) | public void createAlphaAnimation (float start, float end)
method createRGBAnimation (line 50) | public void createRGBAnimation (float RStart, float REnd, float G...
method createScaleAnimation (line 62) | public void createScaleAnimation (float start, float end)
method createXOffsetAnimation (line 70) | public void createXOffsetAnimation (float start, float end)
method createYOffsetAnimation (line 76) | public void createYOffsetAnimation (float start, float end)
method getAnimInfo (line 84) | internal void getAnimInfo(ref uint type, ref uint affected, ref float[...
class CKLBUIScore (line 106) | public class CKLBUIScore : CKLBUITask
method CKLBUIScore_create (line 112) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_getValue (line 120) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_setValue (line 122) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_getOrder (line 125) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_setOrder (line 127) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_getOrderOffset (line 130) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_getStepX (line 133) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_setStepX (line 135) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_getStepY (line 138) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_setStepY (line 140) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_getColumn (line 143) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_setColumn (line 145) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_getFillZero (line 148) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_setFillZero (line 151) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_getAnim (line 154) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_getAlign (line 158) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_setAlign (line 160) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_getTextures (line 163) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_getCountClip (line 166) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_setCountClip (line 169) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_setEnterAnimation (line 172) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore_setExitAnimation (line 175) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScore (line 184) | public CKLBUIScore( CKLBUITask parent, uint order, int orderOffset, fl...
method CKLBUIScore (line 196) | public CKLBUIScore() : base(s_classID) { }
type EALIGN (line 200) | public enum EALIGN {
method reset (line 396) | public void reset()
method enterAnim (line 405) | public void enterAnim(AnimationInfo animation, uint msPlayTime, int ti...
method exitAnim (line 423) | public void exitAnim(AnimationInfo animation, uint msPlayTime, int tim...
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIScrollBar.cs
class CKLBUIScrollBar (line 21) | public class CKLBUIScrollBar : CKLBUITask
method CKLBUIScrollBar_create (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getMin (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setMin (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getMax (line 41) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setMax (line 43) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getPos (line 46) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setPos (line 48) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getSliderSize (line 51) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setSliderSize (line 53) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getSliderSizeMin (line 56) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setSliderSizeMin (line 58) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getTouchActive (line 61) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setTouchActive (line 64) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getNormalColor (line 67) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setNormalColor (line 69) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getActiveColor (line 72) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setActiveColor (line 74) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setMode (line 77) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getVertical (line 80) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setVertical (line 83) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getWidth (line 86) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setWidth (line 88) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getHeight (line 91) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setHeight (line 93) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getOrder (line 96) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_setOrder (line 98) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_getImage (line 102) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIScrollBar_getMode (line 105) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar_selectScrMgr (line 109) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIScrollBar (line 118) | public CKLBUIScrollBar(
method CKLBUIScrollBar (line 140) | public CKLBUIScrollBar() : base(s_classID) { }
method doSetupCallbacks (line 151) | protected override void doSetupCallbacks()
method setDelegate (line 156) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 161) | public virtual void callBackFunction(uint type, int pos)
type ETYPE (line 172) | public enum ETYPE
method getSize (line 235) | public void getSize(out Size size)
method setSize (line 240) | public void setSize(Size size)
method setSize (line 249) | public void setSize(int width, int height)
method selectScrollManager (line 461) | public void selectScrollManager(String name, int[] args = null)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUISimpleItem.cs
class CKLBUISimpleItem (line 21) | public class CKLBUISimpleItem : CKLBUITask
method CKLBUISimpleItem_create (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISimpleItem_getOrder (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISimpleItem_setOrder (line 32) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUISimpleItem_getAsset (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUISimpleItem (line 44) | public CKLBUISimpleItem(CKLBUITask parent, uint order, float x, float ...
method CKLBUISimpleItem (line 52) | public CKLBUISimpleItem() : base(s_classID) { }
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUITask.cs
class CKLBUITask (line 26) | public class CKLBUITask : CKLBTask
method CKLBUITask_getVisible (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_setVisible (line 33) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_getScaleX (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_setScaleX (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_getScaleY (line 41) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_setScaleY (line 43) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_getX (line 46) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_setX (line 48) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_getY (line 51) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_setY (line 53) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_getRotation (line 56) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_setRotation (line 58) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_getArgb (line 61) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_setArgb (line 63) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_isAnim (line 66) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_play (line 70) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_stop (line 73) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_setParamCount (line 76) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_setTarget (line 79) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_addKeys (line 81) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_addKeysFixed (line 83) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_generateAnimation (line 85) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask_reconnect (line 89) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITask (line 97) | internal CKLBUITask(uint classID) : base(classID) { }
type ETARGET_TYPE (line 106) | public enum ETARGET_TYPE
type ESPLINE_TYPE (line 121) | public enum ESPLINE_TYPE
class Spline (line 130) | public abstract class Spline
method Spline (line 146) | protected Spline(ETARGET_TYPE targetType)
method addKeyInt (line 151) | abstract public void addKeyInt(uint time, int value);
method addKeyFloat (line 152) | abstract public void addKeyFloat(uint time, float value);
method addKeys (line 154) | internal abstract void addKeys(IntPtr p, uint splineIndex);
class IntSpline (line 160) | private class IntSpline : Spline
class IntPoint (line 162) | class IntPoint
method IntPoint (line 176) | internal IntPoint(uint time, short value)
method IntSpline (line 185) | internal IntSpline(ETARGET_TYPE targetType) : base(targetType)
method addKeyInt (line 191) | override public void addKeyInt(uint time, int value)
method addKeyFloat (line 200) | public override void addKeyFloat(uint time, float value)
method addKeys (line 211) | internal override void addKeys(IntPtr p, uint splineIndex)
class FloatSpline (line 219) | private class FloatSpline : Spline
class FloatPoint (line 221) | public class FloatPoint
method FloatPoint (line 235) | internal FloatPoint(uint time, float value)
method FloatSpline (line 244) | internal FloatSpline(ETARGET_TYPE targetType) : base(targetType)
method addKeyFloat (line 250) | override public void addKeyFloat(uint time, float value)
method addKeyInt (line 255) | public override void addKeyInt(uint time, int value)
method addKeys (line 266) | internal override void addKeys(IntPtr p, uint splineIndex)
class AnimSpline (line 274) | public class AnimSpline
method AnimSpline (line 282) | public AnimSpline()
method addNewSpline (line 287) | public Spline addNewSpline(ETARGET_TYPE targetType, ESPLINE_TYPE spl...
method reset (line 307) | public void reset()
method getIterator (line 508) | public NodeIterator getIterator(out NodeIterator nodeIterator)
method getIteratorFromName (line 523) | public NodeIterator getIteratorFromName(String name, out NodeIterator ...
method nodeReconnect (line 537) | public void nodeReconnect(String nodeName)
method animationPlay (line 550) | public void animationPlay()
method animationStop (line 563) | public void animationStop()
method setScale (line 577) | public void setScale(float scaleX, float scaleY)
method setAnimSpline (line 594) | public void setAnimSpline(AnimSpline splineArray)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUITextInput.cs
class CKLBUITextInput (line 22) | public class CKLBUITextInput : CKLBUITask
method CKLBUITextInput_create (line 28) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITextInput_getWidth (line 33) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITextInput_setWidth (line 35) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITextInput_getHeight (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITextInput_setHeight (line 40) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITextInput_getText (line 44) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUITextInput_setText (line 46) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUITextInput_setPlaceHolder (line 50) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITextInput_setColor (line 53) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITextInput_getMaxLen (line 56) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITextInput_setMaxLen (line 58) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITextInput_setCharType (line 61) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITextInput_getCharCount (line 64) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITextInput_setFont (line 68) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUITextInput (line 76) | public CKLBUITextInput(CKLBUITask parent, bool passwordMode, int x, in...
method CKLBUITextInput (line 87) | public CKLBUITextInput() : base(s_classID) { }
method doSetupCallbacks (line 97) | protected override void doSetupCallbacks()
method setDelegate (line 102) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 108) | public virtual void callBackFunction(IntPtr txt, uint id)
type ECHAR_TYPE (line 122) | public enum ECHAR_TYPE
method getSize (line 162) | public void getSize(out USize size)
method setSize (line 172) | public void setSize(USize size)
method setSize (line 182) | public void setSize(uint width, uint height)
method setColor (line 238) | public void setColor(bool bTouch, uint foregroundRgb, uint backgroundRgb)
method setFont (line 246) | public void setFont(String fontName, float fontSize)
method setCharType (line 254) | public void setCharType(ECHAR_TYPE chartype)
method setPlaceHolder (line 262) | public void setPlaceHolder(String placeHolder)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUITouchPad.cs
class CKLBUITouchPad (line 21) | public class CKLBUITouchPad : CKLBTask
method CKLBUITouchPad_create (line 26) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITouchPad_setGroup (line 29) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITouchPad_setLock (line 33) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITouchPad_setGetAll (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUITouchPad (line 44) | public CKLBUITouchPad(CKLBTask parent, CallBack callback, bool modal =...
method CKLBUITouchPad (line 54) | public CKLBUITouchPad() : base(s_classID) { }
method doSetupCallbacks (line 65) | protected override void doSetupCallbacks()
method setDelegate (line 70) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 75) | public virtual void callBackFunction(uint execount, uint type, uint id...
type ETYPE (line 89) | public enum ETYPE
method setGetAll (line 96) | public void setGetAll(bool bGetAll)
method setLock (line 104) | public void setLock(bool bLock)
method setGroup (line 113) | public bool setGroup(String group_name)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIVariableItem.cs
class CKLBUIVariableItem (line 21) | public class CKLBUIVariableItem : CKLBUITask
method CKLBUIVariableItem_create (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVariableItem_getOrder (line 30) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVariableItem_setOrder (line 32) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVariableItem_getAsset (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVariableItem_getWidth (line 39) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVariableItem_setWidth (line 41) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVariableItem_getHeight (line 44) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVariableItem_setHeight (line 46) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVariableItem_changeAsset (line 50) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVariableItem_changeUV (line 54) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVariableItem_resetUV (line 57) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVariableItem_setMaskAsset (line 61) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVariableItem (line 70) | public CKLBUIVariableItem(CKLBUITask parent, uint order, float x, floa...
method CKLBUIVariableItem (line 80) | public CKLBUIVariableItem() : base(s_classID) { }
method getSize (line 162) | public void getSize(out FSize size)
method setUV (line 172) | public void setUV(float x, float y, float width, float height) {
method resetUV (line 180) | public void resetUV() {
method setMaskAsset (line 188) | public bool setMaskAsset(String assetName)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIVirtualDoc.cs
class CKLBUIVirtualDoc (line 22) | public class CKLBUIVirtualDoc : CKLBUITask
method CKLBUIVirtualDoc_create (line 27) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_clear (line 34) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_setFont (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIVirtualDoc_setViewPortPos (line 41) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_drawLine (line 44) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_drawImage (line 48) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIVirtualDoc_fillRect (line 51) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_drawText (line 55) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIVirtualDoc_startDocument (line 58) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_checkDocumentSize (line 61) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_endDocument (line 64) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_getCommandMax (line 67) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_setCommandMax (line 69) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_getDocHeight (line 72) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_setDocHeight (line 74) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_getDocWidth (line 77) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_setDocWidth (line 79) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_getVertical (line 82) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_setVertical (line 85) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_getViewHeight (line 88) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_setViewHeight (line 90) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_getViewWidth (line 93) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_setViewWidth (line 95) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_getOrder (line 98) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_setOrder (line 100) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc_setAlign (line 103) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIVirtualDoc (line 111) | public CKLBUIVirtualDoc(CKLBUITask parent, uint order, float x, float ...
method CKLBUIVirtualDoc (line 122) | public CKLBUIVirtualDoc() : base(s_classID) { }
method doSetupCallbacks (line 132) | protected override void doSetupCallbacks()
method setDelegate (line 137) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 142) | public virtual void callBackFunction(uint type, int x, int y, uint mov...
type ETYPE (line 155) | public enum ETYPE : uint
type EALIGN (line 161) | public enum EALIGN : uint {
method getDocSize (line 262) | public void getDocSize(out USize size)
method setDocSize (line 271) | public void setDocSize(USize size)
method setDocSize (line 280) | public void setDocSize(uint width, uint height)
method getViewSize (line 327) | public void getViewSize(out USize size)
method setViewSize (line 336) | public void setViewSize(USize size)
method setViewSize (line 345) | public void setViewSize(uint width, uint height)
method setFont (line 355) | public void setFont(uint index, String name, uint size)
method clear (line 364) | public void clear(uint argb)
method setViewPortPos (line 373) | public void setViewPortPos(int x, int y)
method setAlign (line 383) | public void setAlign(EALIGN align, int alignWidth = -1)
method startDrawList (line 392) | public void startDrawList(uint commandCount) {
method endDrawList (line 403) | public void endDrawList() {
method drawLine (line 408) | public void drawLine(int x0, int y0, int x1, int y1, uint argb)
method drawText (line 419) | public void drawText(int x0, int y0, String str, uint argb, uint font_...
method drawFillRect (line 430) | public void drawFillRect(int x0, int y0, uint width, uint height, uint...
method drawImage (line 441) | public void drawImage(int x, int y, String image, uint alpha)
FILE: CSharpVersion/EnginePrototype/Wrappers/CKLBUIWebArea.cs
class CKLBUIWebArea (line 21) | public class CKLBUIWebArea : CKLBUITask
method CKLBUIWebArea_create (line 28) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIWebArea_getWidth (line 31) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIWebArea_setWidth (line 33) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIWebArea_getHeight (line 36) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIWebArea_setHeight (line 38) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIWebArea_getText (line 42) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIWebArea_setText (line 44) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl, ...
method CKLBUIWebArea_setScalesPageToFit (line 47) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIWebArea_setBgColor (line 50) | [DllImport("__Internal", CallingConvention = CallingConvention.Cdecl)]
method CKLBUIWebArea (line 58) | public CKLBUIWebArea(CKLBUITask parent, bool mode, float x, float y, f...
method CKLBUIWebArea (line 68) | public CKLBUIWebArea() : base(s_classID) { }
method doSetupCallbacks (line 78) | protected override void doSetupCallbacks()
method setDelegate (line 83) | public override void setDelegate(Delegate anyDelegate, String delegate...
method callBackFunction (line 89) | public virtual void callBackFunction(uint uint1, IntPtr url)
method getSize (line 136) | public void getSize(out Size size)
method setSize (line 146) | public void setSize(Size size)
method setSize (line 156) | public void setSize(int width, int height)
method setScalesPageToFit (line 179) | public void setScalesPageToFit(bool b)
method setBgColor (line 188) | public void setBgColor(uint argb)
FILE: Doc/LuaAPI/assets/search.js
function highlight (line 5) | function highlight(node) {
function getSearchTerms (line 30) | function getSearchTerms(url) {
FILE: Engine/include/BaseType.h
type u32 (line 30) | typedef unsigned int u32;
type s32 (line 31) | typedef int s32;
type u16 (line 32) | typedef unsigned short u16;
type s16 (line 33) | typedef short s16;
type u8 (line 34) | typedef unsigned char u8;
type s8 (line 35) | typedef char s8;
type u16 (line 36) | typedef u16 unichar;
type s64 (line 37) | typedef long long int s64;
type u64 (line 38) | typedef long long unsigned int u64;
FILE: Engine/include/FileSystem.h
function class (line 29) | class IReadStream {
function class (line 66) | class IWriteStream {
type WRITE_MODE (line 87) | enum WRITE_MODE {
FILE: Engine/include/ITmpFile.h
function class (line 21) | class ITmpFile
FILE: Engine/include/OSWidget.h
function class (line 21) | class IWidget
FILE: Engine/libs/JSonParser/api/yajl_common.h
type yajl_alloc_funcs (line 58) | typedef struct
FILE: Engine/libs/JSonParser/api/yajl_gen.h
type yajl_gen_status (line 37) | typedef enum {
type yajl_gen_t (line 64) | struct yajl_gen_t
type yajl_gen_option (line 74) | typedef enum {
FILE: Engine/libs/JSonParser/api/yajl_parse.h
type yajl_status (line 61) | typedef enum {
type yajl_handle_t (line 75) | struct yajl_handle_t
type yajl_callbacks (line 102) | typedef struct {
type yajl_option (line 143) | typedef enum {
FILE: Engine/libs/JSonParser/api/yajl_tree.h
type yajl_type (line 37) | typedef enum {
type yajl_val_s (line 55) | struct yajl_val_s
type yajl_val_s (line 64) | struct yajl_val_s
FILE: Engine/libs/JSonParser/json_binary_parser.c
function bjson_getCPCacheID (line 19) | int bjson_getCPCacheID( yajl_handle hand,
function bjson_setCPCacheID (line 29) | void bjson_setCPCacheID( yajl_handle hand,
function bjson_parse (line 40) | int bjson_parse( yajl_handle hand,
FILE: Engine/libs/JSonParser/msg_pack_parser.c
function msgpack_parse (line 54) | int msgpack_parse( yajl_handle hand,
FILE: Engine/libs/JSonParser/yajl.c
function log_null (line 79) | int log_null(void * ctx) {
function log_boolean (line 85) | int log_boolean(void * ctx, int boolVal) {
function log_integer (line 91) | int log_integer(void * ctx, long long integerVal) {
function log_double (line 97) | int log_double(void * ctx, double doubleVal) {
function log_string (line 103) | int log_string(void * ctx, const unsigned char * stringVal,
function log_startmap (line 115) | int log_startmap(void * ctx, unsigned int size) {
function log_mapkey (line 121) | int log_mapkey(void * ctx, const unsigned char * key,
function log_endmap (line 128) | int log_endmap(void * ctx) {
function log_startarray (line 134) | int log_startarray(void * ctx, unsigned int size) {
function log_endarray (line 140) | int log_endarray(void * ctx) {
function yajl_handle (line 160) | yajl_handle
function yajl_config (line 213) | int
function yajl_free (line 239) | void
function yajl_status (line 257) | yajl_status
function yajl_status (line 285) | yajl_status
function yajl_get_bytes_consumed (line 314) | size_t
function yajl_free_error (line 322) | void
FILE: Engine/libs/JSonParser/yajl_alloc.c
function yajl_internal_free (line 39) | static void yajl_internal_free(void * ctx, void * ptr)
function yajl_set_default_alloc_funcs (line 45) | void yajl_set_default_alloc_funcs(yajl_alloc_funcs * yaf)
FILE: Engine/libs/JSonParser/yajl_buf.c
type yajl_buf_t (line 26) | struct yajl_buf_t {
function yajl_buf_ensure_available (line 33) | static
function yajl_buf (line 57) | yajl_buf yajl_buf_alloc(yajl_alloc_funcs * alloc)
function yajl_buf_free (line 65) | void yajl_buf_free(yajl_buf buf)
function yajl_buf_append (line 72) | void yajl_buf_append(yajl_buf buf, const void * data, size_t len)
function yajl_buf_clear (line 83) | void yajl_buf_clear(yajl_buf buf)
function yajl_buf_len (line 94) | size_t yajl_buf_len(yajl_buf buf)
function yajl_buf_truncate (line 99) | void
FILE: Engine/libs/JSonParser/yajl_buf.h
type yajl_buf_t (line 34) | struct yajl_buf_t
FILE: Engine/libs/JSonParser/yajl_bytestack.h
type yajl_bytestack (line 29) | typedef struct yajl_bytestack_t
FILE: Engine/libs/JSonParser/yajl_encode.c
function CharToHex (line 30) | static void CharToHex(unsigned char c, char * hexBuf)
function yajl_string_encode (line 37) | void
function hexToDigit (line 84) | static void hexToDigit(unsigned int * val, const unsigned char * hex)
function Utf32toUtf8 (line 96) | static void Utf32toUtf8(unsigned int codepoint, char * utf8Buf)
function yajl_string_decode (line 122) | void yajl_string_decode(yajl_buf buf, const unsigned char * str,
function yajl_string_validate_utf8 (line 189) | int yajl_string_validate_utf8(const unsigned char * s, size_t len)
FILE: Engine/libs/JSonParser/yajl_gen.c
type yajl_gen_state (line 27) | typedef enum {
type yajl_gen_t (line 38) | struct yajl_gen_t
function yajl_gen_config (line 50) | int
function yajl_gen (line 96) | yajl_gen
function yajl_gen_free (line 127) | void
function yajl_gen_status (line 199) | yajl_gen_status
function yajl_gen_status (line 217) | yajl_gen_status
function yajl_gen_status (line 231) | yajl_gen_status
function yajl_gen_status (line 241) | yajl_gen_status
function yajl_gen_status (line 262) | yajl_gen_status
function yajl_gen_status (line 272) | yajl_gen_status
function yajl_gen_status (line 284) | yajl_gen_status
function yajl_gen_status (line 297) | yajl_gen_status
function yajl_gen_status (line 311) | yajl_gen_status
function yajl_gen_status (line 323) | yajl_gen_status
function yajl_gen_status (line 336) | yajl_gen_status
function yajl_gen_clear (line 346) | void
FILE: Engine/libs/JSonParser/yajl_lex.c
type yajl_lexer_t (line 69) | struct yajl_lexer_t {
function yajl_lexer (line 104) | yajl_lexer
function yajl_lex_free (line 117) | void
function yajl_tok (line 195) | static yajl_tok
function yajl_string_scan (line 255) | static size_t
function yajl_tok (line 268) | static yajl_tok
function yajl_tok (line 371) | static yajl_tok
function yajl_tok (line 458) | static yajl_tok
function yajl_tok (line 499) | yajl_tok
function yajl_lex_error (line 729) | yajl_lex_error
function yajl_lex_current_line (line 736) | size_t yajl_lex_current_line(yajl_lexer lexer)
function yajl_lex_current_char (line 741) | size_t yajl_lex_current_char(yajl_lexer lexer)
function yajl_tok (line 746) | yajl_tok yajl_lex_peek(yajl_lexer lexer, const unsigned char * jsonText,
FILE: Engine/libs/JSonParser/yajl_lex.h
type yajl_tok (line 22) | typedef enum {
type yajl_lexer_t (line 48) | struct yajl_lexer_t
type yajl_lex_error (line 87) | typedef enum {
FILE: Engine/libs/JSonParser/yajl_parser.c
function yajl_parse_integer (line 41) | long long
function yajl_status (line 160) | yajl_status
function yajl_status (line 187) | yajl_status
FILE: Engine/libs/JSonParser/yajl_parser.h
type yajl_state (line 30) | typedef enum {
type cp_entry (line 46) | typedef struct {
type bjson_handle (line 52) | typedef struct {
type yajl_handle_t (line 63) | typedef struct yajl_handle_t {
FILE: Engine/libs/JSonParser/yajl_tree.c
type stack_elem_s (line 40) | struct stack_elem_s
type stack_elem_t (line 41) | typedef struct stack_elem_s stack_elem_t;
type stack_elem_s (line 42) | struct stack_elem_s
type context_s (line 49) | struct context_s
type context_t (line 56) | typedef struct context_s context_t;
function yajl_val (line 64) | static yajl_val value_alloc (yajl_type type)
function yajl_object_free (line 76) | static void yajl_object_free (yajl_val v)
function yajl_array_free (line 95) | static void yajl_array_free (yajl_val v)
function context_push (line 118) | static int context_push(context_t *ctx, yajl_val v)
function yajl_val (line 138) | static yajl_val context_pop(context_t *ctx)
function object_add_keyval (line 157) | static int object_add_keyval(context_t *ctx,
function array_add_value (line 189) | static int array_add_value (context_t *ctx,
function context_add_value (line 218) | static int context_add_value (context_t *ctx, yajl_val v)
function handle_string (line 276) | static int handle_string (void *ctx,
function handle_number (line 298) | static int handle_number (void *ctx, const char *string, size_t string_l...
function handle_start_map (line 334) | static int handle_start_map (void *ctx, unsigned int size)
function handle_end_map (line 350) | static int handle_end_map (void *ctx)
function handle_start_array (line 361) | static int handle_start_array (void *ctx, unsigned int size)
function handle_end_array (line 376) | static int handle_end_array (void *ctx)
function handle_boolean (line 387) | static int handle_boolean (void *ctx, int boolean_value)
function handle_null (line 398) | static int handle_null (void *ctx)
function yajl_val (line 412) | yajl_val yajl_tree_parse (const char *input,
function yajl_val (line 463) | yajl_val yajl_tree_get(yajl_val n, const char ** path, yajl_type type)
function yajl_tree_free (line 483) | void yajl_tree_free (yajl_val v)
FILE: Engine/libs/RuntimeCSharp/CompilerProject/BaseType.h
type s32 (line 40) | typedef int s32;
type u32 (line 41) | typedef unsigned int u32;
type s16 (line 42) | typedef short s16;
type u16 (line 43) | typedef unsigned short u16;
type s8 (line 44) | typedef char s8;
type u8 (line 45) | typedef unsigned char u8;
type s64 (line 46) | typedef long long s64;
type u64 (line 47) | typedef unsigned long long u64;
type ptrAsInt (line 48) | typedef unsigned int ptrAsInt;
type u16 (line 49) | typedef u16 uniChar;
type u32 (line 50) | typedef u32 uint;
type u8 (line 51) | typedef u8 byte;
type s8 (line 52) | typedef s8 sbyte;
type EGENRE (line 78) | enum EGENRE {
type SRSymbol (line 94) | struct SRSymbol {
type StringID (line 102) | struct StringID {
type SValue (line 109) | struct SValue {
type EnumTypeObject (line 179) | enum EnumTypeObject {
type EATTRIBUTE (line 207) | enum EATTRIBUTE {
type EnumExpressionType (line 254) | enum EnumExpressionType {
type EnumStatementType (line 335) | enum EnumStatementType {
type EOVEROP (line 375) | enum EOVEROP {
type ECOMPARISON (line 400) | enum ECOMPARISON {
type EMATCH (line 406) | enum EMATCH {
FILE: Engine/libs/RuntimeCSharp/RuntimeLibrary/CS_Array.cpp
type System (line 18) | namespace System {
function u32 (line 29) | u32 AbstractArray::_processGC() {
function Object (line 192) | Object* AbstractArray::_getValue(s32 index) {
function s32 (line 203) | s32 AbstractArray::BinarySearch(AbstractArray* _array, Object* value) {
function s32 (line 240) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s64 value) {
function s32 (line 247) | s32 AbstractArray::BinarySearch(AbstractArray* _array, u64 value) {
function s32 (line 254) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 value) {
function s32 (line 261) | s32 AbstractArray::BinarySearch(AbstractArray* _array, u32 value) {
function s32 (line 268) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s16 value) {
function s32 (line 275) | s32 AbstractArray::BinarySearch(AbstractArray* _array, u16 value) {
function s32 (line 282) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s8 value) {
function s32 (line 289) | s32 AbstractArray::BinarySearch(AbstractArray* _array, u8 value) {
function s32 (line 296) | s32 AbstractArray::BinarySearch(AbstractArray* _array, float value) {
function s32 (line 303) | s32 AbstractArray::BinarySearch(AbstractArray* _array, double value) {
function s32 (line 310) | s32 AbstractArray::BinarySearch(AbstractArray* _array, bool value) {
function s32 (line 322) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 index, s32 ...
function s32 (line 360) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 index, s32 ...
function s32 (line 367) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 index, s32 ...
function s32 (line 374) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 index, s32 ...
function s32 (line 381) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 index, s32 ...
function s32 (line 388) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 index, s32 ...
function s32 (line 395) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 index, s32 ...
function s32 (line 402) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 index, s32 ...
function s32 (line 409) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 index, s32 ...
function s32 (line 416) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 index, s32 ...
function s32 (line 423) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 index, s32 ...
function s32 (line 430) | s32 AbstractArray::BinarySearch(AbstractArray* _array, s32 index, s32 ...
function s32 (line 494) | s32 AbstractArray::IndexOf(AbstractArray* _array, Object* value) {
function s32 (line 507) | s32 AbstractArray::IndexOf(AbstractArray* _array, s64 value) {
function s32 (line 514) | s32 AbstractArray::IndexOf(AbstractArray* _array, u64 value) {
function s32 (line 521) | s32 AbstractArray::IndexOf(AbstractArray* _array, s32 value) {
function s32 (line 528) | s32 AbstractArray::IndexOf(AbstractArray* _array, u32 value) {
function s32 (line 535) | s32 AbstractArray::IndexOf(AbstractArray* _array, s16 value) {
function s32 (line 542) | s32 AbstractArray::IndexOf(AbstractArray* _array, u16 value) {
function s32 (line 549) | s32 AbstractArray::IndexOf(AbstractArray* _array, s8 value) {
function s32 (line 556) | s32 AbstractArray::IndexOf(AbstractArray* _array, u8 value) {
function s32 (line 563) | s32 AbstractArray::IndexOf(AbstractArray* _array, float value) {
function s32 (line 570) | s32 AbstractArray::IndexOf(AbstractArray* _array, double value) {
function s32 (line 577) | s32 AbstractArray::IndexOf(AbstractArray* _array, bool value) {
function s32 (line 587) | s32 AbstractArray::IndexOf(AbstractArray* _array, Object* value, s32 s...
function s32 (line 601) | s32 AbstractArray::IndexOf(AbstractArray* _array, s64 value, s32 start...
function s32 (line 609) | s32 AbstractArray::IndexOf(AbstractArray* _array, u64 value, s32 start...
function s32 (line 617) | s32 AbstractArray::IndexOf(AbstractArray* _array, s32 value, s32 start...
function s32 (line 625) | s32 AbstractArray::IndexOf(AbstractArray* _array, u32 value, s32 start...
function s32 (line 633) | s32 AbstractArray::IndexOf(AbstractArray* _array, s16 value, s32 start...
function s32 (line 641) | s32 AbstractArray::IndexOf(AbstractArray* _array, u16 value, s32 start...
function s32 (line 649) | s32 AbstractArray::IndexOf(AbstractArray* _array, s8 value, s32 startI...
function s32 (line 657) | s32 AbstractArray::IndexOf(AbstractArray* _array, u8 value, s32 startI...
function s32 (line 665) | s32 AbstractArray::IndexOf(AbstractArray* _array, float value, s32 sta...
function s32 (line 673) | s32 AbstractArray::IndexOf(AbstractArray* _array, double value, s32 st...
function s32 (line 681) | s32 AbstractArray::IndexOf(AbstractArray* _array, bool value, s32 star...
function s32 (line 692) | s32 AbstractArray::IndexOf(AbstractArray* _array, Object* value, s32 s...
function s32 (line 708) | s32 AbstractArray::IndexOf(AbstractArray* _array, s64 value, s32 start...
function s32 (line 718) | s32 AbstractArray::IndexOf(AbstractArray* _array, u64 value, s32 start...
function s32 (line 728) | s32 AbstractArray::IndexOf(AbstractArray* _array, s32 value, s32 start...
function s32 (line 738) | s32 AbstractArray::IndexOf(AbstractArray* _array, u32 value, s32 start...
function s32 (line 748) | s32 AbstractArray::IndexOf(AbstractArray* _array, s16 value, s32 start...
function s32 (line 758) | s32 AbstractArray::IndexOf(AbstractArray* _array, u16 value, s32 start...
function s32 (line 768) | s32 AbstractArray::IndexOf(AbstractArray* _array, s8 value, s32 startI...
function s32 (line 778) | s32 AbstractArray::IndexOf(AbstractArray* _array, u8 value, s32 startI...
function s32 (line 788) | s32 AbstractArray::IndexOf(AbstractArray* _array, float value, s32 sta...
function s32 (line 798) | s32 AbstractArray::IndexOf(AbstractArray* _array, double value, s32 st...
function s32 (line 808) | s32 AbstractArray::IndexOf(AbstractArray* _array, bool value, s32 star...
function s32 (line 823) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, Object* value) {
function s32 (line 836) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, s64 value) {
function s32 (line 843) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, u64 value) {
function s32 (line 850) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, s32 value) {
function s32 (line 857) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, u32 value) {
function s32 (line 864) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, s16 value) {
function s32 (line 871) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, u16 value) {
function s32 (line 878) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, s8 value) {
function s32 (line 885) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, u8 value) {
function s32 (line 892) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, float value) {
function s32 (line 899) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, double value) {
function s32 (line 906) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, bool value) {
function s32 (line 916) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, Object* value, s...
function s32 (line 930) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, s64 value, s32 s...
function s32 (line 938) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, u64 value, s32 s...
function s32 (line 946) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, s32 value, s32 s...
function s32 (line 954) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, u32 value, s32 s...
function s32 (line 962) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, s16 value, s32 s...
function s32 (line 970) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, u16 value, s32 s...
function s32 (line 978) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, s8 value, s32 st...
function s32 (line 986) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, u8 value, s32 st...
function s32 (line 994) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, float value, s32...
function s32 (line 1002) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, double value, s3...
function s32 (line 1010) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, bool value, s32 ...
function s32 (line 1021) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, Object* value, s...
function s32 (line 1037) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, s64 value, s32 s...
function s32 (line 1047) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, u64 value, s32 s...
function s32 (line 1057) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, s32 value, s32 s...
function s32 (line 1067) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, u32 value, s32 s...
function s32 (line 1077) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, s16 value, s32 s...
function s32 (line 1087) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, u16 value, s32 s...
function s32 (line 1097) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, s8 value, s32 st...
function s32 (line 1107) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, u8 value, s32 st...
function s32 (line 1117) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, float value, s32...
function s32 (line 1127) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, double value, s3...
function s32 (line 1137) | s32 AbstractArray::LastIndexOf(AbstractArray* _array, bool value, s32 ...
FILE: Engine/libs/RuntimeCSharp/RuntimeLibrary/CS_Array.h
function namespace (line 23) | namespace System {
function _array_refSetValue (line 335) | inline void Array<u64>::_array_refSetValue (s32 idx, u64 item) { ((u64*...
function _array_refSetValue (line 336) | inline void Array<s64>::_array_refSetValue (s32 idx, s64 item) { ((s64*...
function _array_refSetValue (line 337) | inline void Array<u32>::_array_refSetValue (s32 idx, u32 item) { ((u32*...
function _array_refSetValue (line 338) | inline void Array<s32>::_array_refSetValue (s32 idx, s32 item) { ((u32*...
function _array_refSetValue (line 339) | inline void Array<u16>::_array_refSetValue (s32 idx, u16 item) { ((u16*...
function _array_refSetValue (line 340) | inline void Array<s16>::_array_refSetValue (s32 idx, s16 item) { ((u16*...
function _array_refSetValue (line 341) | inline void Array<u8 >::_array_refSetValue (s32 idx, u8 item) { ((u8 *...
function _array_refSetValue (line 342) | inline void Array<s8 >::_array_refSetValue (s32 idx, s8 item) { ((u8 *...
function _array_refSetValue (line 343) | bool>::_array_refSetValue (s32 idx, bool item) { ((bool*)m_array) [idx ...
function _array_refSetValue (line 344) | double>::_array_refSetValue(s32 idx, double item) { ((double*)m_array)[i...
function _array_refSetValue (line 345) | float>::_array_refSetValue (s32 idx, float item) { ((float*)m_array) [id...
function _array_refSetValue (line 346) | inline void Array<s32*>::_array_refSetValue (s32 idx, s32* item) { ((s32...
function TRY (line 431) | TRY
function CTRY (line 447) | CTRY
function s32 (line 456) | inline s32 AbstractArray::BinarySearch(Array<u64>* _array, u64 value) {...
function s32 (line 457) | inline s32 AbstractArray::BinarySearch(Array<s32>* _array, s32 value) {...
function s32 (line 458) | inline s32 AbstractArray::BinarySearch(Array<u32>* _array, u32 value) {...
function s32 (line 459) | inline s32 AbstractArray::BinarySearch(Array<s16>* _array, s16 value) {...
function s32 (line 460) | inline s32 AbstractArray::BinarySearch(Array<u16>* _array, u16 value) {...
function s32 (line 461) | inline s32 AbstractArray::BinarySearch(Array<s8>* _array, s8 value) { ...
function s32 (line 462) | inline s32 AbstractArray::BinarySearch(Array<u8>* _array, u8 value) { ...
function s32 (line 463) | inline s32 AbstractArray::BinarySearch(Array<float>* _array, float value...
function s32 (line 464) | inline s32 AbstractArray::BinarySearch(Array<double>* _array, double val...
function s32 (line 465) | inline s32 AbstractArray::BinarySearch(Array<bool>* _array, bool value) ...
function TRY (line 482) | TRY
function CTRY (line 498) | CTRY
function s32 (line 534) | inline s32 AbstractArray::BinarySearch(Array<s64>* _array, s32 index, s3...
function s32 (line 535) | inline s32 AbstractArray::BinarySearch(Array<u64>* _array, s32 index, s3...
function s32 (line 536) | inline s32 AbstractArray::BinarySearch(Array<s32>* _array, s32 index, s3...
function s32 (line 537) | inline s32 AbstractArray::BinarySearch(Array<u32>* _array, s32 index, s3...
function s32 (line 538) | inline s32 AbstractArray::BinarySearch(Array<s16>* _array, s32 index, s3...
function s32 (line 539) | inline s32 AbstractArray::BinarySearch(Array<u16>* _array, s32 index, s3...
function s32 (line 540) | inline s32 AbstractArray::BinarySearch(Array<s8>* _array, s32 index, s32...
function s32 (line 541) | inline s32 AbstractArray::BinarySearch(Array<u8>* _array, s32 index, s32...
function s32 (line 542) | inline s32 AbstractArray::BinarySearch(Array<float>* _array, s32 index, ...
function s32 (line 543) | inline s32 AbstractArray::BinarySearch(Array<double>* _array, s32 index,...
function s32 (line 544) | inline s32 AbstractArray::BinarySearch(Array<bool>* _array, s32 index, s...
function s32 (line 562) | s32 AbstractArray::IndexOf(Array<T>* _array, T value) {
function s32 (line 574) | s32 AbstractArray::IndexOf(Array<T>* _array, T value, s32 startIndex) {
function s32 (line 587) | s32 AbstractArray::IndexOf(Array<T>* _array, T value, s32 startIndex, s3...
function s32 (line 602) | s32 AbstractArray::LastIndexOf(Array<T>* _array, T value) {
function s32 (line 614) | s32 AbstractArray::LastIndexOf(Array<T>* _array, T value, s32 startIndex) {
function s32 (line 627) | s32 AbstractArray::LastIndexOf(Array<T>* _array, T value, s32 startIndex...
function CTRY (line 711) | CTRY
function Sort (line 752) | void AbstractArray::Sort(Array<T>* _array, s32 index, s32 length) {
FILE: Engine/libs/RuntimeCSharp/RuntimeLibrary/CS_Console.cpp
type System (line 18) | namespace System {
FILE: Engine/libs/RuntimeCSharp/RuntimeLibrary/CS_Console.h
function namespace (line 22) | namespace System {
FILE: Engine/libs/RuntimeCSharp/RuntimeLibrary/CS_Exception.cpp
type System (line 25) | namespace System {
function u32 (line 61) | u32 Exception::_processGC() {
function String (line 80) | String* Exception::ToString() {
function String (line 84) | String* Exception::_acc_gMessage() {
function String (line 88) | String* Exception::_acc_gStackTrace() {
function String (line 110) | String* SystemException::ToString() {
function String (line 132) | String* IndexOutOfRangeException::ToString() {
function String (line 154) | String* NullReferenceException::ToString() {
function String (line 176) | String* OutOfMemoryException::ToString() {
function String (line 198) | inline
function String (line 221) | String* ArgumentOutOfRangeException::ToString() {
function String (line 243) | String* ArgumentNullException::ToString() {
function String (line 265) | inline
function String (line 288) | inline
function String (line 311) | inline
function String (line 334) | String* ArithmeticException::ToString() {
function String (line 356) | String* DivideByZeroException::ToString() {
FILE: Engine/libs/RuntimeCSharp/RuntimeLibrary/CS_Marshal.h
function namespace (line 21) | namespace System {
FILE: Engine/libs/RuntimeCSharp/RuntimeLibrary/CS_Math.h
function namespace (line 22) | namespace System {
FILE: Engine/libs/RuntimeCSharp/RuntimeLibrary/CS_Memory.cpp
function u32 (line 22) | u32 _refCallFinish_(System::RefHolder* array_) {
function _refRemove_ (line 29) | void _refRemove_(u32 count, System::RefHolder* array_) {
type System (line 44) | namespace System {
function __GCObject (line 303) | __GCObject* Memory::removeNext() {
function u32 (line 323) | u32 Memory::getProcessSizeMax() {
function u32 (line 334) | u32 Memory::getLastProcessIndex() {
function __GCObject (line 650) | __GCObject* __GCObject::_RefSetValue(__GCObject** m_ptrOwner, __GCObje...
function __GCObject (line 662) | __GCObject* __GCObject::_RefSetOwner(__GCObject** m_ptrOwner, __GCObje...
function RefList (line 964) | RefList* RefList::createList(__GCObject* obj, __GCObject** newRef) {
function __GCObject (line 996) | __GCObject*& __GCObject::__registerByRef(__GCObject*& ref) {
FILE: Engine/libs/RuntimeCSharp/RuntimeLibrary/CS_Memory.h
function namespace (line 136) | namespace System {
type ArrayItem (line 252) | struct ArrayItem {
function init (line 276) | bool init(u16 entryCount) {
function release (line 296) | void release() {
function T (line 301) | T* allocEntry() {
function freeEntry (line 327) | void freeEntry(T* entry) {
function class (line 368) | class Memory {
FILE: Engine/libs/RuntimeCSharp/RuntimeLibrary/CS_Object.cpp
function CS_free (line 26) | void CS_free(void* ptr) {
type System (line 41) | namespace System {
function u32 (line 49) | u32 Object::_processGC() {
function s32 (line 63) | s32 Object::GetHashCode() {
function String (line 74) | String* Object::GetType() {
function s32 (line 85) | s32 Object::CompareTo(Object* obj) {
function String (line 95) | String* Object::ToString() {
FILE: Engine/libs/RuntimeCSharp/RuntimeLibrary/CS_Object.h
type _CS_CLASS_TYPE (line 45) | enum _CS_CLASS_TYPE {
function class (line 76) | class __GCObject {
function class (line 152) | class __GCMalloc : public __GCObject {
function class (line 160) | class __GCStruct {
function class (line 194) | class Object : public __GCObject
FILE: Engine/libs/RuntimeCSharp/RuntimeLibrary/CS_String.cpp
type System (line 22) | namespace System {
function uniChar (line 49) | uniChar* _x_StringGlobalAllocator::getStartPointer(u32 optionnalSize) {
function uniChar (line 62) | uniChar* _x_StringGlobalAllocator::getLimitPointer() {
function u32 (line 287) | u32 String::_processGC() {
function asciiToUnicode16 (line 520) | void asciiToUnicode16(u8* pSrc, u32 len, uniChar* pDst) {
function uniChar (line 527) | const uniChar* String::_getStringBuffer() const {
function s32 (line 541) | s32 String::_acc_gLength() {
function uniChar (line 545) | const uniChar& String::operator[](s32 index) const {
function s32 (line 565) | s32 String::Compare(String* strA, String* strB) {
function s32 (line 608) | s32 String::Compare(String* strA, String* strB, bool ignoreCase) {
function String (line 651) | String* String::Concat(Object* obj) {
function String (line 655) | String* String::Concat(/*params*/ Array<Object*>* args) {
function String (line 691) | String* String::Concat(/*params*/ Array<String*>* values) {
function String (line 723) | String* String::Copy(String* str) {
Copy disabled (too large)
Download .json
Condensed preview — 2953 files, each showing path, character count, and a content snippet. Download the .json file for the full structured content (43,749K chars).
[
{
"path": ".gitignore",
"chars": 858,
"preview": "# build environment/text editor things\n.gradle/\n.idea/\nlocal.properties\n*.vshost.*\n*.suo\n*.vcxproj.user\n*.csproj.user\n*."
},
{
"path": ".travis.yml",
"chars": 2424,
"preview": "# ref: http://blog.crowdint.com/2013/05/17/android-builds-on-travis-ci-with-maven.html\n# ref: http://blog.crowdint.com/2"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/AbstractContainer.cpp",
"chars": 15560,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/AbstractContainer.h",
"chars": 4372,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Accessor.cpp",
"chars": 1362,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Attribute.cpp",
"chars": 3505,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Attribute.h",
"chars": 1450,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/BaseType.h",
"chars": 10065,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/CompilerProject.cpp",
"chars": 15907,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/CompilerProject.sln",
"chars": 4025,
"preview": "\r\nMicrosoft Visual Studio Solution File, Format Version 11.00\r\n# Visual C++ Express 2010\r\nProject(\"{8BC9CEB8-8B4A-11D0-"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/CompilerProject.vcxproj",
"chars": 31239,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<Project DefaultTargets=\"Build\" ToolsVersion=\"4.0\" xmlns=\"http://schemas.micros"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/CompilerProject.vcxproj.filters",
"chars": 5001,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbui"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Dump.cpp",
"chars": 177264,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Expression.cpp",
"chars": 10514,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Expression.h",
"chars": 4465,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Method.cpp",
"chars": 4657,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/NameSpace.cpp",
"chars": 9849,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/NameSpace.h",
"chars": 2397,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Statement.cpp",
"chars": 2297,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Statement.h",
"chars": 2123,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Symbol.cpp",
"chars": 2280,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Symbol.h",
"chars": 1519,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/TypeObject.cpp",
"chars": 35459,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/TypeObject.h",
"chars": 3140,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/UTF8Parse.h",
"chars": 841,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/UTF8Parser.cpp",
"chars": 5283,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Variable.cpp",
"chars": 3444,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/Variable.h",
"chars": 1944,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/bison.simple",
"chars": 17775,
"preview": "/* -*-C-*- Note some compilers choke on comments on `#line' lines. */\r\n#line 3 \"bison.simple\"\r\n\r\n/* Skeleton output pa"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/build.bat",
"chars": 128,
"preview": "cls\r\nflex.exe -i -c -n -I -olexParser.inc csharp.l\r\nbison.exe -t --debug --verbose --yacc --output=csharpCompiler.cpp cs"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/compilerLibrary.cpp",
"chars": 40155,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/compilerLibrary.h",
"chars": 11709,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/csharp.l",
"chars": 24133,
"preview": "/*** \r\n *** C# parser/scanner\r\n *** Copyright 2002 James Power, NUI Maynooth, Ireland <james.power@may.ie>\r\n *** This ve"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/csharp.y",
"chars": 64244,
"preview": "/***\r\n *** C# parser/scanner\r\n *** Copyright 2002 James Power, NUI Maynooth, Ireland <james.power@may.ie>\r\n *** This ver"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/csharpcompiler.cpp",
"chars": 175329,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/csharpcompiler.cpp.output",
"chars": 600755,
"preview": "State 515 contains 1 reduce/reduce conflict.\r\nState 793 contains 1 shift/reduce conflict.\r\n\r\nGrammar\r\nrule 1 literal "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/dirent.c",
"chars": 3320,
"preview": "/*\r\n\r\n Implementation of POSIX directory browsing functions and types for Win32.\r\n\r\n Author: Kevlin Henney (kevli"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/dirent.h",
"chars": 1064,
"preview": "#ifndef DIRENT_INCLUDED\r\n#define DIRENT_INCLUDED\r\n\r\n/*\r\n\r\n Declaration of POSIX directory browsing functions and type"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/include.h",
"chars": 893,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/lex.yy.h",
"chars": 1824,
"preview": "/***\r\n *** C# parser/scanner\r\n *** Copyright 2002 James Power, NUI Maynooth, Ireland <james.power@may.ie>\r\n *** This ver"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/lexParser.inc",
"chars": 65180,
"preview": "#line 2 \"lexParser.inc\"\r\n/* A lexical scanner generated by flex */\r\n\r\n/* Scanner skeleton version:\r\n * $Header: /home/da"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/stdafx.cpp",
"chars": 302,
"preview": "// stdafx.cpp : source file that includes just the standard includes\r\n// CompilerProject.pch will be the pre-compiled he"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/stdafx.h",
"chars": 320,
"preview": "// stdafx.h : include file for standard system include files,\r\n// or project specific include files that are used freque"
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/supported.cs",
"chars": 40778,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/targetver.h",
"chars": 917,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/unistd.h",
"chars": 0,
"preview": ""
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/CompilerProject/y.tab.h",
"chars": 1151,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/CSharp_CPPCompiler/Compiler_Limitations.txt",
"chars": 1539,
"preview": "###############################\r\n# C# Compiler Limitations #\r\n###############################\r\n\r\n\r\nNOT SUPPORTED\r\n\r\n"
},
{
"path": "CSharpVersion/EnginePrototype/EnginePrototypeCS.csproj",
"chars": 4604,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<Project DefaultTargets=\"Build\" ToolsVersion=\"4.0\" xmlns=\"http://schemas.micros"
},
{
"path": "CSharpVersion/EnginePrototype/EnginePrototypeCS.sln",
"chars": 890,
"preview": "\r\nMicrosoft Visual Studio Solution File, Format Version 11.00\r\n# Visual Studio 2010\r\nProject(\"{FAE04EC0-301F-11D3-BF4B-"
},
{
"path": "CSharpVersion/EnginePrototype/FrameworkCore/CKLBException.cs",
"chars": 2060,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/FrameworkCore/GameObject.cs",
"chars": 12306,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/FrameworkCore/GameObjectFactory.cs",
"chars": 2345,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/FrameworkCore/NativeManagement.cs",
"chars": 22955,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/FrameworkCore/NodeIterator.cs",
"chars": 38862,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/FrameworkCore/Utils.cs",
"chars": 6293,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/FrameworkCore/WrapperReg.cs",
"chars": 4623,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSAPP.cs",
"chars": 1467,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSAsset.cs",
"chars": 4130,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSBin.cs",
"chars": 3456,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSDB.cs",
"chars": 2977,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSData.cs",
"chars": 2506,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSDebug.cs",
"chars": 4934,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSEng.cs",
"chars": 2795,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSFont.cs",
"chars": 4373,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSGL.cs",
"chars": 3592,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSKey.cs",
"chars": 5294,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSLang.cs",
"chars": 2963,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSMatrix.cs",
"chars": 4888,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSRES.cs",
"chars": 2668,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSSound.cs",
"chars": 9553,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSSystem.cs",
"chars": 2174,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Libs/CSUI.cs",
"chars": 1529,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBAsyncLoader.cs",
"chars": 3880,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBGenericTask.cs",
"chars": 3671,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBIntervalTimer.cs",
"chars": 4992,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBNetAPI.cs",
"chars": 10413,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBStoreService.cs",
"chars": 3629,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBTask.cs",
"chars": 9596,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUICanvas.cs",
"chars": 8350,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIClip.cs",
"chars": 5657,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIControl.cs",
"chars": 8948,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIDebugItem.cs",
"chars": 6915,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIDragIcon.cs",
"chars": 9045,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIForm.cs",
"chars": 11473,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIFreeVertItem.cs",
"chars": 5256,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIGroup.cs",
"chars": 4547,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUILabel.cs",
"chars": 8352,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIList.cs",
"chars": 35383,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIMoviePlayer.cs",
"chars": 7688,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIMultiImgItem.cs",
"chars": 6130,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIPieChart.cs",
"chars": 6353,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIPolyline.cs",
"chars": 5418,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIProgressBar.cs",
"chars": 17402,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIRubberBand.cs",
"chars": 11450,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUISWFPlayer.cs",
"chars": 9923,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIScale9.cs",
"chars": 5712,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIScore.cs",
"chars": 16520,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIScrollBar.cs",
"chars": 17586,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUISimpleItem.cs",
"chars": 3119,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUITask.cs",
"chars": 22994,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUITextInput.cs",
"chars": 10459,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUITouchPad.cs",
"chars": 4047,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIVariableItem.cs",
"chars": 6690,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIVirtualDoc.cs",
"chars": 17251,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/CKLBUIWebArea.cs",
"chars": 6646,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype/Wrappers/IAmADocClass.cs",
"chars": 7515,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "CSharpVersion/EnginePrototype.sln",
"chars": 922,
"preview": "\r\nMicrosoft Visual Studio Solution File, Format Version 11.00\r\n# Visual Studio 2010\r\nProject(\"{FAE04EC0-301F-11D3-BF4B-"
},
{
"path": "Doc/Android_Build.md",
"chars": 8179,
"preview": "Windows Specific Install\r\n========================\r\n\r\nThe easiest and fastest to build for Android is to use a Linux emu"
},
{
"path": "Doc/Documentation_CSharp.md",
"chars": 19111,
"preview": "C# Documentation\r\n================\r\n\r\nIntroduction\r\n-------------\r\n\r\nThe C++ Engine interacts with a Scripting Language "
},
{
"path": "Doc/Documentation_Libraries.md",
"chars": 4518,
"preview": "Library Names\r\n=============\r\n\r\nLibraries list\r\n--------------\r\n\r\nHere is the list of the libraries used in this project"
},
{
"path": "Doc/Documentation_Modules.md",
"chars": 1234,
"preview": "Modules documentation\r\n=====================\r\n\r\nThis file presents the various modules and their roles inside the game e"
},
{
"path": "Doc/Documentation_Tasks.md",
"chars": 13215,
"preview": "Tasks\r\n=====\r\n\r\nThis file will introduce the tasks used in the engine.\r\n\r\nThe tasks are the basics object used by script"
},
{
"path": "Doc/How_to_run.md",
"chars": 6815,
"preview": "\r\nHow to run\r\n==========\r\n\r\nGetting started\r\n---------------\r\n\r\n### Write your LUA code.\r\n\r\nSample Projects can be found"
},
{
"path": "Doc/IPA_Font_License_Agreement_v1.0.txt",
"chars": 13001,
"preview": "--------------------------------------------------\nIPA Font License Agreement v1.0 <Japanese/English>\n-----------------"
},
{
"path": "Doc/LuaAPI/FAQ.html",
"chars": 33338,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/LIFECtrl.html",
"chars": 2807,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/ONLINE_Update.html",
"chars": 4357,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/PAUSECtrl.html",
"chars": 2713,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/README.md",
"chars": 15,
"preview": "see index.html\n"
},
{
"path": "Doc/LuaAPI/README_DOC.txt",
"chars": 390,
"preview": "This is the detailed document for :\r\n- LUA global functions & constants.\r\n- Tasks construction & commands\r\n\r\nThe documen"
},
{
"path": "Doc/LuaAPI/STORE_Service.html",
"chars": 5882,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/TASK_Generic.html",
"chars": 3004,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_ActivityIndicator.html",
"chars": 3570,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_Button.html",
"chars": 3185,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_Clip.html",
"chars": 3386,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_Control.html",
"chars": 4962,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_DbgLabel.html",
"chars": 3132,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_DragIcon.html",
"chars": 4589,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_Form.html",
"chars": 11346,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_FreeVertItem.html",
"chars": 4812,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_Group.html",
"chars": 3754,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_Label.html",
"chars": 3617,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_List.html",
"chars": 23510,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_MoviePlayer.html",
"chars": 4944,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_MultiImgItem.html",
"chars": 3159,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_PieChart.html",
"chars": 5423,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_Polyline.html",
"chars": 3236,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_ProgressBar.html",
"chars": 5616,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_RubberBand.html",
"chars": 4508,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_SWFPlayer.html",
"chars": 5280,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_Score.html",
"chars": 5147,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_ScrollBar.html",
"chars": 8487,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_SimpleItem.html",
"chars": 2592,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_TextInput.html",
"chars": 6406,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_TouchPad.html",
"chars": 4243,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_VariableItem.html",
"chars": 3513,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_VirtualDoc.html",
"chars": 5596,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UI_WebView.html",
"chars": 6955,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/UTIL_IntervalTimer.html",
"chars": 2819,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/assets/jquery.js",
"chars": 31033,
"preview": "/*\n * jQuery 1.2.6 - New Wave Javascript\n *\n * Copyright (c) 2008 John Resig (jquery.com)\n * Dual licensed under the MIT"
},
{
"path": "Doc/LuaAPI/assets/search.js",
"chars": 2253,
"preview": "(function($){\n \n /* Adapted from http://www.kryogenix.org/code/browser/searchhi/ */\n $.fn.highlightText = function(te"
},
{
"path": "Doc/LuaAPI/assets/trac.css",
"chars": 16452,
"preview": "body { background: #fff; color: #000; margin: 10px; padding: 0; }\nbody, th, td {\n font: normal 13px Verdana,Arial,'Bitst"
},
{
"path": "Doc/LuaAPI/assets/trac.js",
"chars": 2098,
"preview": "(function($){\n \n $.fn.addAnchor = function(title) {\n title = title || \"Link here\";\n return this.filter(\"*[id]\")."
},
{
"path": "Doc/LuaAPI/assets/wiki.css",
"chars": 1650,
"preview": "@import url(code.css);\n\n/* Styles for the path of hierarchical pages */\np.path { margin: 0; padding: 0 0 .5em; font-size"
},
{
"path": "Doc/LuaAPI/callbacks.html",
"chars": 2739,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/design_lua.html",
"chars": 42555,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/functions.html",
"chars": 45595,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/index.html",
"chars": 5583,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/modalstack.html",
"chars": 2993,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/properties.html",
"chars": 7116,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/LuaAPI/tree.html",
"chars": 2321,
"preview": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmln"
},
{
"path": "Doc/Modules/Allocators.txt",
"chars": 3309,
"preview": "============================== Allocators & Memory ==================================\r\n\r\n1. Global Object & Array Alloca"
},
{
"path": "Doc/Modules/Asset_Stream_Format/Asset_Naming_Convention.txt",
"chars": 1295,
"preview": "Asset Loading specification & Format\r\n---------------------------------------\r\n\r\n1/ Asset Seen from File URL :\rFile URL "
},
{
"path": "Doc/Modules/Asset_Stream_Format/TEXB_stream_format.txt",
"chars": 1961,
"preview": "--------------------------------------------------------------------------\r\nTEXB File format\r\n\r\nTEXB file format describ"
},
{
"path": "Doc/Modules/Asset_Stream_Format/TIMG_stream_format.txt",
"chars": 1397,
"preview": "--------------------------------------------------------------------------\r\nTIMG Chunk format\r\n\r\nTIMG Chunk format descr"
},
{
"path": "Doc/Modules/Assets.txt",
"chars": 9363,
"preview": "================================ Assets ====================================\r\n\r\nThe Asset Manager (CKLBAssetManager) is "
},
{
"path": "Doc/Modules/Audio.txt",
"chars": 2433,
"preview": "============================== Audio ==================================\r\n\r\nThere are two ways to load audio data :\r\n- On"
},
{
"path": "Doc/Modules/Encryption.txt",
"chars": 3344,
"preview": "============================== Encryption ==================================\r\n\r\nFor obvious purpose, we do need sometime"
},
{
"path": "Doc/Modules/FileSystem.txt",
"chars": 4008,
"preview": "============================== File System =================================\r\n\r\nThe platform provides a set of APIs to h"
},
{
"path": "Doc/Modules/Network.txt",
"chars": 5590,
"preview": "============================== Network ==================================\r\n\r\nAt first, the core system is CKLBHTTPInterf"
},
{
"path": "Doc/Modules/Rendering.txt",
"chars": 8747,
"preview": "======================== Rendering =============================\r\n\r\nThe rendering is actually composed of two modules.\r"
},
{
"path": "Doc/Modules/SceneGraph.txt",
"chars": 8102,
"preview": "============================== Scene graph ==================================\r\n\r\nThe Scene Graph is used to represent a "
},
{
"path": "Doc/Modules/Scripting.txt",
"chars": 9488,
"preview": "============================== Scripting ==================================\r\n\r\nWe use LUA as scripting language but othe"
},
{
"path": "Doc/Modules/Tasks.txt",
"chars": 9278,
"preview": "============================== Task System ==================================\r\n\r\nThe only thing executed each frame by t"
},
{
"path": "Doc/Project.md",
"chars": 6800,
"preview": "What's this Playground project?\r\n===============================\r\n\r\nIntroduction\r\n------------\r\n\r\nBy comparing various "
},
{
"path": "Doc/Toboggan/README.md",
"chars": 91,
"preview": "Toboggan Manual\n===============\n\n**Japanese only.**\n\nToboggan is in ```Tools``` directory.\n"
},
{
"path": "Engine/include/BaseType.h",
"chars": 9524,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "Engine/include/FileSystem.h",
"chars": 2903,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "Engine/include/ITmpFile.h",
"chars": 835,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "Engine/include/OSWidget.h",
"chars": 3291,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "Engine/include/assert_klb.h",
"chars": 1568,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "Engine/include/klb_vararg.h",
"chars": 696,
"preview": "/* \r\n Copyright 2013 KLab Inc.\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not "
},
{
"path": "Engine/libs/JSonParser/api/yajl_common.h",
"chars": 2637,
"preview": "/*\r\n * Copyright (c) 2007-2011, Lloyd Hilaiel <lloyd@hilaiel.com>\r\n *\r\n * Permission to use, copy, modify, and/or distri"
},
{
"path": "Engine/libs/JSonParser/api/yajl_gen.h",
"chars": 6692,
"preview": "/*\n * Copyright (c) 2007-2011, Lloyd Hilaiel <lloyd@hilaiel.com>\n *\n * Permission to use, copy, modify, and/or distribut"
},
{
"path": "Engine/libs/JSonParser/api/yajl_parse.h",
"chars": 11212,
"preview": "/*\r\n * Copyright (c) 2007-2011, Lloyd Hilaiel <lloyd@hilaiel.com>\r\n *\r\n * Permission to use, copy, modify, and/or distri"
},
{
"path": "Engine/libs/JSonParser/api/yajl_tree.h",
"chars": 7260,
"preview": "/*\r\n * Copyright (c) 2010-2011 Florian Forster <ff at octo.it>\r\n *\r\n * Permission to use, copy, modify, and/or distrib"
},
{
"path": "Engine/libs/JSonParser/important.txt",
"chars": 201,
"preview": "IMPORTANT :\r\nThe source of the library has been modified to allow compatibility with an efficient binary JSon parser.\r\nM"
},
{
"path": "Engine/libs/JSonParser/json_binary_parser.c",
"chars": 8267,
"preview": "#include \"api/yajl_parse.h\"\r\n#include \"yajl_parser.h\"\r\n\r\n#include <stdio.h>\r\n\r\n#define BJSON_NO_ERROR\t\t(yajl_status_ok)\r"
},
{
"path": "Engine/libs/JSonParser/msg_pack_parser.c",
"chars": 8956,
"preview": "#include \"api/yajl_parse.h\"\r\n#include \"yajl_parser.h\"\r\n\r\n\r\n#define MSGPACK_NO_ERROR\t\t(yajl_status_ok)\r\n#define MSGPACK_C"
},
{
"path": "Engine/libs/JSonParser/yajl.c",
"chars": 9087,
"preview": "/*\r\n * Copyright (c) 2007-2011, Lloyd Hilaiel <lloyd@hilaiel.com>\r\n *\r\n * Permission to use, copy, modify, and/or distri"
},
{
"path": "Engine/libs/JSonParser/yajl_alloc.c",
"chars": 1564,
"preview": "/*\r\n * Copyright (c) 2007-2011, Lloyd Hilaiel <lloyd@hilaiel.com>\r\n *\r\n * Permission to use, copy, modify, and/or distri"
},
{
"path": "Engine/libs/JSonParser/yajl_alloc.h",
"chars": 1289,
"preview": "/*\r\n * Copyright (c) 2007-2011, Lloyd Hilaiel <lloyd@hilaiel.com>\r\n *\r\n * Permission to use, copy, modify, and/or distri"
},
{
"path": "Engine/libs/JSonParser/yajl_assert.h",
"chars": 89,
"preview": "#ifndef __YAJL_ASSERT__\r\n#define __YAJL_ASSERT__\r\n\r\n#define assert(c)\t\t(!(c))\r\n\r\n#endif\r\n"
},
{
"path": "Engine/libs/JSonParser/yajl_buf.c",
"chars": 2662,
"preview": "/*\r\n * Copyright (c) 2007-2011, Lloyd Hilaiel <lloyd@hilaiel.com>\r\n *\r\n * Permission to use, copy, modify, and/or distri"
},
{
"path": "Engine/libs/JSonParser/yajl_buf.h",
"chars": 1922,
"preview": "/*\r\n * Copyright (c) 2007-2011, Lloyd Hilaiel <lloyd@hilaiel.com>\r\n *\r\n * Permission to use, copy, modify, and/or distri"
},
{
"path": "Engine/libs/JSonParser/yajl_bytestack.h",
"chars": 2460,
"preview": "/*\r\n * Copyright (c) 2007-2011, Lloyd Hilaiel <lloyd@hilaiel.com>\r\n *\r\n * Permission to use, copy, modify, and/or distri"
},
{
"path": "Engine/libs/JSonParser/yajl_encode.c",
"chars": 7677,
"preview": "/*\r\n * Copyright (c) 2007-2011, Lloyd Hilaiel <lloyd@hilaiel.com>\r\n *\r\n * Permission to use, copy, modify, and/or distri"
},
{
"path": "Engine/libs/JSonParser/yajl_encode.h",
"chars": 1344,
"preview": "/*\r\n * Copyright (c) 2007-2011, Lloyd Hilaiel <lloyd@hilaiel.com>\r\n *\r\n * Permission to use, copy, modify, and/or distri"
},
{
"path": "Engine/libs/JSonParser/yajl_gen.c",
"chars": 11010,
"preview": "/*\r\n * Copyright (c) 2007-2011, Lloyd Hilaiel <lloyd@hilaiel.com>\r\n *\r\n * Permission to use, copy, modify, and/or distri"
}
]
// ... and 2753 more files (download for full content)
About this extraction
This page contains the full source code of the KLab/PlaygroundOSS GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 2953 files (38.7 MB), approximately 10.3M tokens, and a symbol index with 23718 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.