Arma Reforger Script API
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
SCR_AiScriptGenerator_Parser Interface Reference

Public Member Functions

array< ref SCR_AiScriptGenerator_ClassGetParsedClasses ()
 
void ParseLines (array< string > lines, string fileName)
 Must be called for content of each parsed file.
 
void FindRelatedClasses ()
 Must be called after all files have been parsed Connects related parsed classes together.
 
void PrintListing ()
 Print listing in console.
 

Static Public Attributes

const string COMMENT = "//"
 
const string CLASS = "class"
 
const string MACRO_VARIABLE = "VARIABLE"
 
const string NODE_PORT = "NodePort"
 
const string NODE_PROPERTY = "NodeProperty"
 
const string NODE_PROPERTY_ENUM = "NodePropertyEnum"
 
const string MACRO_MESSAGE_CLASS = "MESSAGE_CLASS"
 
const string GENERATE_SEND_GOAL_MESSAGE = "GenerateSendGoalMessage"
 
const string GENERATE_SEND_INFO_MESSAGE = "GenerateSendInfoMessage"
 
const string GENERATE_SEND_ORDER = "GenerateSendOrder"
 

Protected Member Functions

void ResetContext (string currentFile)
 
void ParseLine (inout string line, int lineId)
 
string ExtractComment (string str)
 
bool ExtractMacro (string str, string macroName, array< string > outMacroArguments)
 
bool ExtractVariable (string str, out string varType, out string varName)
 
bool ExtractClass (string str, out string className, out string parentClassName)
 
string Unquote (string str)
 
void _print (string str, LogLevel logLevel=LogLevel.NORMAL, bool printContext=true)
 
bool VerifyMacro_MessageClass (array< string > args)
 
bool VerifyMacro_Variable (array< string > args)
 
bool VerifyMacroArgumentCount (string macroName, array< string > args, int n)
 

Protected Attributes

int m_iCurrentLineId
 
string m_sCurrentLine
 
string m_sCurrentFile
 
ref SCR_AiScriptGenerator_Class m_CurrentClass
 
ref array< ref SCR_AiScriptGenerator_Classm_aParsedClasses = {}
 

Member Function Documentation

◆ _print()

void SCR_AiScriptGenerator_Parser._print ( string  str,
LogLevel  logLevel = LogLevel::NORMAL,
bool  printContext = true 
)
protected

◆ ExtractClass()

bool SCR_AiScriptGenerator_Parser.ExtractClass ( string  str,
out string  className,
out string  parentClassName 
)
protected

◆ ExtractComment()

string SCR_AiScriptGenerator_Parser.ExtractComment ( string  str)
protected

◆ ExtractMacro()

bool SCR_AiScriptGenerator_Parser.ExtractMacro ( string  str,
string  macroName,
array< string >  outMacroArguments 
)
protected

◆ ExtractVariable()

bool SCR_AiScriptGenerator_Parser.ExtractVariable ( string  str,
out string  varType,
out string  varName 
)
protected

◆ FindRelatedClasses()

void SCR_AiScriptGenerator_Parser.FindRelatedClasses ( )

Must be called after all files have been parsed Connects related parsed classes together.

◆ GetParsedClasses()

array< ref SCR_AiScriptGenerator_Class > SCR_AiScriptGenerator_Parser.GetParsedClasses ( )
Returns

◆ ParseLine()

void SCR_AiScriptGenerator_Parser.ParseLine ( inout string  line,
int  lineId 
)
protected

◆ ParseLines()

void SCR_AiScriptGenerator_Parser.ParseLines ( array< string >  lines,
string  fileName 
)

Must be called for content of each parsed file.

Parameters
[in]lines
[in]fileName

◆ PrintListing()

void SCR_AiScriptGenerator_Parser.PrintListing ( )

Print listing in console.

◆ ResetContext()

void SCR_AiScriptGenerator_Parser.ResetContext ( string  currentFile)
protected

◆ Unquote()

string SCR_AiScriptGenerator_Parser.Unquote ( string  str)
protected

◆ VerifyMacro_MessageClass()

bool SCR_AiScriptGenerator_Parser.VerifyMacro_MessageClass ( array< string >  args)
protected

◆ VerifyMacro_Variable()

bool SCR_AiScriptGenerator_Parser.VerifyMacro_Variable ( array< string >  args)
protected

◆ VerifyMacroArgumentCount()

bool SCR_AiScriptGenerator_Parser.VerifyMacroArgumentCount ( string  macroName,
array< string >  args,
int  n 
)
protected

Member Data Documentation

◆ CLASS

const string SCR_AiScriptGenerator_Parser.CLASS = "class"
static

◆ COMMENT

const string SCR_AiScriptGenerator_Parser.COMMENT = "//"
static

◆ GENERATE_SEND_GOAL_MESSAGE

const string SCR_AiScriptGenerator_Parser.GENERATE_SEND_GOAL_MESSAGE = "GenerateSendGoalMessage"
static

◆ GENERATE_SEND_INFO_MESSAGE

const string SCR_AiScriptGenerator_Parser.GENERATE_SEND_INFO_MESSAGE = "GenerateSendInfoMessage"
static

◆ GENERATE_SEND_ORDER

const string SCR_AiScriptGenerator_Parser.GENERATE_SEND_ORDER = "GenerateSendOrder"
static

◆ m_aParsedClasses

ref array<ref SCR_AiScriptGenerator_Class> SCR_AiScriptGenerator_Parser.m_aParsedClasses = {}
protected

◆ m_CurrentClass

ref SCR_AiScriptGenerator_Class SCR_AiScriptGenerator_Parser.m_CurrentClass
protected

◆ m_iCurrentLineId

int SCR_AiScriptGenerator_Parser.m_iCurrentLineId
protected

◆ m_sCurrentFile

string SCR_AiScriptGenerator_Parser.m_sCurrentFile
protected

◆ m_sCurrentLine

string SCR_AiScriptGenerator_Parser.m_sCurrentLine
protected

◆ MACRO_MESSAGE_CLASS

const string SCR_AiScriptGenerator_Parser.MACRO_MESSAGE_CLASS = "MESSAGE_CLASS"
static

◆ MACRO_VARIABLE

const string SCR_AiScriptGenerator_Parser.MACRO_VARIABLE = "VARIABLE"
static

◆ NODE_PORT

const string SCR_AiScriptGenerator_Parser.NODE_PORT = "NodePort"
static

◆ NODE_PROPERTY

const string SCR_AiScriptGenerator_Parser.NODE_PROPERTY = "NodeProperty"
static

◆ NODE_PROPERTY_ENUM

const string SCR_AiScriptGenerator_Parser.NODE_PROPERTY_ENUM = "NodePropertyEnum"
static

The documentation for this interface was generated from the following file: