wc3edit.net
https://forum.wc3edit.net/

cJass
http://forum.wc3edit.net/useful-tools-f69/cjass-t13721.html
Page 1 of 1

Author:  Black-Hole [ September 1st, 2009, 6:23 pm ]
Post subject:  cJass

cJass is small, but useful preprocessor for JASS2 interpreted language, used in Warcraft III by Blizzard ent. Its main purposes are to make the process of writing the script simple and comfortable and to increase its readability.
Here is what cJass code looks like:
Code:
include "syn\\cj_types.j"

define <new timer> = CreateTimer()

timer MyGlobalTimer = new timer

void SomeFunc (bool b) {
  if (!b) { b = true }

  float a = 2.
  int c = -2
  a *= c + 8.

  whilenot (a < c++) {
    BJDebugMsg(I2S(a))
  }
}

The program is designed for use with Jass New Gen Pack, is compatible with vJass (0.9.J.1) parser and is run before it.
Installing:
Download the installer, run it, select preferred install type, then select the NewGen folder and press Install button. That's all!
The AutoUpdate tool is included in the install package, so you can be sure that your cJass version is always the latest one available
Downloads:
Latest version: 01 03 04 02 (01.09.2009)
Download cJass installer (470K, exe)
Changelog:
01 03 04 02
— Added support of debug instruction
— Added cj_order and cj_antibj_base to standard library
— Updated cj_print
01 03 04 01
— Fixed bug with {} inside of defines
01 03 04 00
— Added "cj_print.j" library
— Fixed bug with operator overloading inside of interface
— fixed private multi-word defines
01 03 03 14
— Fixed bug with define arguments not processed without <>
01 03 03 12
— Fixed C-style methods inside of modules
— Now defines can take any arguments without additional mess
— Fixed rare 'out of memory' bug
— Some rare define bugs fixed
01 03 03 09
— Fixed bug with ==
— vJass textmacro processing removed.
01 03 03 08
— define's arguments parsing logic changed
— Comma in enums added.
— Fixed bugs with external tools' calls
— Some bugs with ++ and -- fixed
01 03 03 04
— C-style operator declaration added
— Enums added.
— Some define-related bugs fixed
01 03 02 18
— Branch 1.3.x.x public release
— Lots of new features (see syntax section and manual).
— 'Capital Z in define arguments' issue fixed
01 03 01 00
— Free locals declaration added.
— Rewrote increment.
— Blocks inside the loop added.
01 03 00 03
— Info panel finished.
— Script refactoring
01 02 01 08
— Added info panel.
01 02 01 07
— Lots of bugs fixed.
01 02 01 06
— Fixed bug with vJass preprocessor instructions (//!).
01 02 01 05
— Now defines can takes arguments.
01 02 01 03
— Fixed specific bug with define.
— Fixed library_once bug.
— Include directive also searches in the map's folder.
01 02 01 02
— Fixed program crash when there was only one define.
01 02 01 01
— Added concatenation (##) instruction.
— Added ability to hook native functions.
01 02 00 0c
— And one more bug fixed.
01 02 00 0b
— Fixed some bugs.
01 02 00 0a
— Added nested defines.
— Added include instruction.
— Added the ability to group variables.
— Fixed bug with private or public types and structures.
01 01 00 02
— Visual progress added.
— Some bugs fixed.
01 00 04 04
— Private defines added.
— Some bugs fixed.
01 00 01 00
— Textmacro processing added.
01 00 00 01
— Public release.

I dont take credit, Found this http://cjass.xgm.ru/

Author:  Ken [ September 1st, 2009, 6:30 pm ]
Post subject:  Re: cJass

Oh, I'm lovin' it.

Author:  Black-Hole [ September 2nd, 2009, 5:06 pm ]
Post subject:  Re: cJass

:P I put this in General chat on Accident, can a mod/admin move this to the WC3 section please

Author:  Nothinbeter2do [ September 6th, 2009, 4:27 pm ]
Post subject:  Re: cJass

So what exactly does this do? Convert C++ to Jass? That's what it looks like to me.

Author:  Ken [ September 6th, 2009, 6:30 pm ]
Post subject:  Re: cJass

It just lets you write JASS with a more C-like syntax, to make it more comfortable to people used to C/C++.

Page 1 of 1 All times are UTC
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/