3ds Max C++ API Reference
Loading...
Searching...
No Matches
parser.h File Reference

Classes

struct  rollout_control
 
class  Parser
 
struct  property_accessors
 

Namespaces

namespace  MaxSDK
 
namespace  MaxSDK::Util
 

Macros

#define MAX_TOKEN_SIZE   256
 
#define UNDEFINED_MACRO   -1
 
#define token_name(tok)   token_names[(int)tok]
 

Typedefs

using create_fn = RolloutControl *(*)(Value *name, Value *caption, Value **keyparms, int keyparm_count)
 

Enumerations

enum  lex_token {
  t_local , t_global , t_fn , t_mapped ,
  t_if , t_then , t_else , t_do ,
  t_collect , t_while , t_case , t_open_paren ,
  t_close_paren , t_plus , t_times , t_minus ,
  t_div , t_power , t_end , t_pluseq ,
  t_minuseq , t_timeseq , t_diveq , t_and ,
  t_or , t_not , t_number , t_string ,
  t_assign , t_semicolon , t_bad , t_badNum ,
  t_eol , t_comma , t_open_bracket , t_close_bracket ,
  t_colon , t_quote , t_doubleQuote , t_ampersand ,
  t_name , t_dot , t_name_literal , t_openCurly ,
  t_closeCurly , t_hash , t_eq , t_ne ,
  t_lt , t_gt , t_ge , t_le ,
  t_for , t_in , t_from , t_to ,
  t_by , t_of , t_where , t_as ,
  t_parameter_keyword , t_path_name , t_query , t_slash ,
  t_ellipsis , t_level_name , t_wild_card_name , t_dot_dot ,
  t_end_of_path , t_with , t_animate , t_coordsys ,
  t_set , t_undo , t_about , t_at ,
  t_on , t_off , t_private , t_public ,
  t_max , t_nullary_call , t_utility , t_rollout ,
  t_return , t_exit , t_when , t_continue ,
  t_struct , t_try , t_catch , t_throw ,
  t_eos , t_plugin , t_tool , t_persistent ,
  t_parameters , t_rcmenu , t_macroScript , t_dropScript ,
  t_attributes , t_tilde , t_resourceID , t_missing
}
 

Functions

ScripterExport void install_rollout_control (Value *name, create_fn creator)
 
property_accessorsget_property_accessors (Value *prop)
 

Variables

ScripterExport HashTableglobals
 

Macro Definition Documentation

◆ MAX_TOKEN_SIZE

#define MAX_TOKEN_SIZE   256

◆ UNDEFINED_MACRO

#define UNDEFINED_MACRO   -1

◆ token_name

#define token_name (   tok)    token_names[(int)tok]

Typedef Documentation

◆ create_fn

using create_fn = RolloutControl* (*)(Value* name, Value* caption, Value** keyparms, int keyparm_count)

Enumeration Type Documentation

◆ lex_token

enum lex_token
Enumerator
t_local 
t_global 
t_fn 
t_mapped 
t_if 
t_then 
t_else 
t_do 
t_collect 
t_while 
t_case 
t_open_paren 
t_close_paren 
t_plus 
t_times 
t_minus 
t_div 
t_power 
t_end 
t_pluseq 
t_minuseq 
t_timeseq 
t_diveq 
t_and 
t_or 
t_not 
t_number 
t_string 
t_assign 
t_semicolon 
t_bad 
t_badNum 
t_eol 
t_comma 
t_open_bracket 
t_close_bracket 
t_colon 
t_quote 
t_doubleQuote 
t_ampersand 
t_name 
t_dot 
t_name_literal 
t_openCurly 
t_closeCurly 
t_hash 
t_eq 
t_ne 
t_lt 
t_gt 
t_ge 
t_le 
t_for 
t_in 
t_from 
t_to 
t_by 
t_of 
t_where 
t_as 
t_parameter_keyword 
t_path_name 
t_query 
t_slash 
t_ellipsis 
t_level_name 
t_wild_card_name 
t_dot_dot 
t_end_of_path 
t_with 
t_animate 
t_coordsys 
t_set 
t_undo 
t_about 
t_at 
t_on 
t_off 
t_private 
t_public 
t_max 
t_nullary_call 
t_utility 
t_rollout 
t_return 
t_exit 
t_when 
t_continue 
t_struct 
t_try 
t_catch 
t_throw 
t_eos 
t_plugin 
t_tool 
t_persistent 
t_parameters 
t_rcmenu 
t_macroScript 
t_dropScript 
t_attributes 
t_tilde 
t_resourceID 
t_missing 
35{
57
58 t_missing // always last
59};
@ t_of
Definition: parser.h:45
@ t_global
Definition: parser.h:36
@ t_persistent
Definition: parser.h:54
@ t_ellipsis
Definition: parser.h:47
@ t_diveq
Definition: parser.h:39
@ t_fn
Definition: parser.h:36
@ t_private
Definition: parser.h:50
@ t_eq
Definition: parser.h:44
@ t_about
Definition: parser.h:50
@ t_open_bracket
Definition: parser.h:42
@ t_div
Definition: parser.h:38
@ t_nullary_call
Definition: parser.h:51
@ t_eos
Definition: parser.h:53
@ t_and
Definition: parser.h:40
@ t_then
Definition: parser.h:37
@ t_dropScript
Definition: parser.h:55
@ t_from
Definition: parser.h:45
@ t_name
Definition: parser.h:43
@ t_do
Definition: parser.h:37
@ t_at
Definition: parser.h:50
@ t_ampersand
Definition: parser.h:43
@ t_when
Definition: parser.h:52
@ t_parameters
Definition: parser.h:54
@ t_with
Definition: parser.h:49
@ t_tilde
Definition: parser.h:56
@ t_eol
Definition: parser.h:42
@ t_case
Definition: parser.h:37
@ t_semicolon
Definition: parser.h:41
@ t_badNum
Definition: parser.h:42
@ t_quote
Definition: parser.h:43
@ t_missing
Definition: parser.h:58
@ t_off
Definition: parser.h:50
@ t_rollout
Definition: parser.h:51
@ t_macroScript
Definition: parser.h:55
@ t_local
Definition: parser.h:36
@ t_parameter_keyword
Definition: parser.h:46
@ t_lt
Definition: parser.h:44
@ t_end
Definition: parser.h:38
@ t_as
Definition: parser.h:46
@ t_assign
Definition: parser.h:41
@ t_end_of_path
Definition: parser.h:48
@ t_utility
Definition: parser.h:51
@ t_ge
Definition: parser.h:45
@ t_while
Definition: parser.h:37
@ t_close_bracket
Definition: parser.h:42
@ t_else
Definition: parser.h:37
@ t_name_literal
Definition: parser.h:43
@ t_doubleQuote
Definition: parser.h:43
@ t_for
Definition: parser.h:45
@ t_number
Definition: parser.h:41
@ t_collect
Definition: parser.h:37
@ t_tool
Definition: parser.h:54
@ t_mapped
Definition: parser.h:36
@ t_open_paren
Definition: parser.h:38
@ t_continue
Definition: parser.h:52
@ t_rcmenu
Definition: parser.h:54
@ t_max
Definition: parser.h:51
@ t_string
Definition: parser.h:41
@ t_on
Definition: parser.h:50
@ t_minus
Definition: parser.h:38
@ t_struct
Definition: parser.h:53
@ t_comma
Definition: parser.h:42
@ t_coordsys
Definition: parser.h:49
@ t_to
Definition: parser.h:45
@ t_le
Definition: parser.h:45
@ t_public
Definition: parser.h:50
@ t_path_name
Definition: parser.h:46
@ t_not
Definition: parser.h:40
@ t_timeseq
Definition: parser.h:39
@ t_by
Definition: parser.h:45
@ t_undo
Definition: parser.h:49
@ t_ne
Definition: parser.h:44
@ t_or
Definition: parser.h:40
@ t_if
Definition: parser.h:37
@ t_query
Definition: parser.h:47
@ t_animate
Definition: parser.h:49
@ t_level_name
Definition: parser.h:47
@ t_bad
Definition: parser.h:41
@ t_dot
Definition: parser.h:43
@ t_resourceID
Definition: parser.h:56
@ t_gt
Definition: parser.h:44
@ t_hash
Definition: parser.h:44
@ t_colon
Definition: parser.h:42
@ t_plus
Definition: parser.h:38
@ t_close_paren
Definition: parser.h:38
@ t_openCurly
Definition: parser.h:44
@ t_power
Definition: parser.h:38
@ t_plugin
Definition: parser.h:54
@ t_pluseq
Definition: parser.h:39
@ t_slash
Definition: parser.h:47
@ t_where
Definition: parser.h:45
@ t_in
Definition: parser.h:45
@ t_set
Definition: parser.h:49
@ t_minuseq
Definition: parser.h:39
@ t_catch
Definition: parser.h:53
@ t_try
Definition: parser.h:53
@ t_times
Definition: parser.h:38
@ t_throw
Definition: parser.h:53
@ t_exit
Definition: parser.h:52
@ t_closeCurly
Definition: parser.h:44
@ t_dot_dot
Definition: parser.h:48
@ t_wild_card_name
Definition: parser.h:47
@ t_return
Definition: parser.h:52
@ t_attributes
Definition: parser.h:55

Function Documentation

◆ install_rollout_control()

ScripterExport void install_rollout_control ( Value name,
create_fn  creator 
)

◆ get_property_accessors()

property_accessors * get_property_accessors ( Value prop)

Variable Documentation

◆ globals

ScripterExport HashTable* globals
extern