Trailing-Edge
-
PDP-10 Archives
-
decuslib20-07
-
decus/20-0172/toktyp.req
There is 1 other file named toktyp.req in the archive. Click here to see a list.
!<BLF/lowercase_user>
!<BLF/uppercase_key>
!++
!
!
! TOKTYP.REQ
!
!
! This REQUIRE file contains all the definitions
! relating to the global block "token".
!
!
! REVISION HISTORY
!
! 12-Oct-81 TT Added s_empty to list of valid token types.
! This makes us look more like the 10/20.
! This will be used in the future for parsing
! empty lexical functions.
!
! 18-Jan-82 TT Added %require as s_p_require. Note that
! Bliss syntax says that %REQUIRE is not a
! declaration.
!
! END OF REVISION HISTORY
!--
COMPILETIME
_next_type_ = 0;
MACRO
next (a) =
LITERAL a = _next_type_;
%ASSIGN (_next_type_, _next_type_ + 1);
%;
!
! Field definitions for token block.
!
FIELD
tokk =
SET
tok_len = [0, 0, %BPVAL, 0],
tok_cp = [1, 0, %BPVAL, 0],
tok_type = [2, 0, %BPVAL, 0]
TES;
MACRO
tok_block =
BLOCK [3] FIELD (tokk) %;
!<BLF/page>
next (s_end_of_file);
!+
! Delimiters and operators
!-
LITERAL
first_delop = _next_type_;
next (s_lparen);
next (s_rparen);
next (s_multiply);
next (s_plus);
next (s_minus);
next (s_mod);
next (s_comma);
next (s_dot);
next (s_divide);
next (s_colon);
next (s_semicolon);
next (s_langle);
next (s_equal);
next (s_rangle);
next (s_lbracket);
next (s_rbracket);
next (s_circumflex);
next (s_percent);
next (s_begin);
next (s_end);
next (s_from);
next (s_to);
next (s_by);
next (s_set);
next (s_tes);
next (s_of);
next (s_eqv);
next (s_xor);
next (s_or);
next (s_and);
next (s_not);
next (s_eql);
next (s_neq);
next (s_lss);
next (s_leq);
next (s_gtr);
next (s_geq);
next (s_eqlu);
next (s_nequ);
next (s_lssu);
next (s_lequ);
next (s_gtru);
next (s_gequ);
next (s_eqla);
next (s_neqa);
next (s_lssa);
next (s_leqa);
next (s_gtra);
next (s_geqa);
next (s_plit);
next (s_uplit);
next (s_codecomment);
LITERAL
last_delop = _next_type_ - 1;
!+
! Comments
!-
LITERAL
first_comment = _next_type_;
next (remark);
next (start_embedded);
next (mid_embedded);
next (end_embedded);
next (start_block_com);
next (mid_block_com);
next (end_block_com);
next (full_line_com);
LITERAL
last_comment = _next_type_ - 1;
!+
! Miscellany
!-
next (s_byte);
next (s_word);
next (s_long);
next (s_name);
next (s_string);
next (s_numeric);
next (s_percent_if);
next (s_percent_then);
next (s_percent_else);
next (s_percent_fi);
next (s_p_quote);
next (s_empty); ! TT 12-Oct-81
next (s_p_compiler);
next (s_p_require);
next (s_p_subtitle);
next (s_p_title);
next (s_initial);
!+
! Declarators
!-
LITERAL
first_decl = _next_type_;
next (s_global);
next (s_local);
next (s_external);
next (s_literal);
next (s_stacklocal);
next (s_register);
next (s_map);
next (s_forward);
next (s_label);
next (s_builtin);
next (s_psect);
next (s_own);
next (s_linkage);
next (s_structure);
next (s_require);
next (s_library);
next (s_bind);
next (s_routine);
next (s_switches);
next (s_macro);
next (s_keywordmacro);
next (s_enable);
next (s_field);
next (s_compiletime);
next (s_undeclare);
next (s_module);
LITERAL
last_decl = _next_type_ - 1;
!+
! Not quite declarations
!-
next (s_eludom);
!+
! Symbols which start control expressions
!-
LITERAL
first_control = _next_type_;
next (s_if);
next (s_case);
next (s_select);
next (s_selectone);
next (s_selectu);
next (s_selectoneu);
next (s_selecta);
next (s_selectonea);
next (s_incr);
next (s_incra);
next (s_incru);
next (s_decr);
next (s_decra);
next (s_decru);
next (s_while);
next (s_until);
next (s_do);
next (s_leave);
next (s_exitloop);
next (s_return);
LITERAL
last_control = _next_type_ - 1;
!+
! More miscellany
!-
next (s_then);
next (s_else);
next (s_rep);
next (s_with);
next (s_newline);
next (s_newpage);
next (null_symbol);
LITERAL
max_sym = _next_type_ - 1;
!
!
! ... End of require file 'TOKTYP.REQ' ...