2020-07-04 01:01:02 +03:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
< html >
< head >
< title > Diagrams< / title >
< link href = "../docs-assets/Breadcrumbs.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
< meta name = "viewport" content = "width=device-width initial-scale=1" >
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" >
< meta http-equiv = "Content-Language" content = "en-gb" >
< link href = "../docs-assets/Contents.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
< link href = "../docs-assets/Progress.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
< link href = "../docs-assets/Navigation.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
< link href = "../docs-assets/Fonts.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
< link href = "../docs-assets/Base.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
2020-07-27 02:27:32 +03:00
< script >
function togglePopup(material_id) {
var popup = document.getElementById(material_id);
popup.classList.toggle("show");
}
< / script >
< link href = "../docs-assets/Popups.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
< script src = "http://code.jquery.com/jquery-1.12.4.min.js"
integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous">< / script >
< script src = "../docs-assets/Bigfoot.js" > < / script >
< link href = "../docs-assets/Bigfoot.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
2020-07-04 01:01:02 +03:00
< link href = "../docs-assets/Colours.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
< / head >
< body class = "commentary-font" >
< nav role = "navigation" >
2022-04-28 19:37:28 +03:00
< h1 > < a href = "../index.html" >
2020-07-04 01:01:02 +03:00
< img src = "../docs-assets/Inform.png" height = 72" >
< / a > < / h1 >
2022-04-28 19:37:28 +03:00
< ul > < li > < a href = "../index.html" > home< / a > < / li >
2022-04-04 20:31:44 +03:00
< / ul > < h2 > Compiler< / h2 > < ul >
< li > < a href = "../structure.html" > structure< / a > < / li >
< li > < a href = "../inbuildn.html" > inbuild< / a > < / li >
< li > < a href = "../inform7n.html" > inform7< / a > < / li >
< li > < a href = "../intern.html" > inter< / a > < / li >
< li > < a href = "../services.html" > services< / a > < / li >
2022-04-18 17:46:46 +03:00
< li > < a href = "../secrets.html" > secrets< / a > < / li >
2022-04-04 20:31:44 +03:00
< / ul > < h2 > Other Tools< / h2 > < ul >
< li > < a href = "../inblorbn.html" > inblorb< / a > < / li >
< li > < a href = "../indocn.html" > indoc< / a > < / li >
< li > < a href = "../inform6.html" > inform6< / a > < / li >
< li > < a href = "../inpolicyn.html" > inpolicy< / a > < / li >
2022-04-14 00:09:08 +03:00
< / ul > < h2 > Resources< / h2 > < ul >
< li > < a href = "../extensions.html" > extensions< / a > < / li >
< li > < a href = "../kits.html" > kits< / a > < / li >
2022-04-04 20:31:44 +03:00
< / ul > < h2 > Repository< / h2 > < ul >
< li > < a href = "https://github.com/ganelson/inform" > < img src = "../docs-assets/github.png" height = 18 > github< / a > < / li >
< / ul > < h2 > Related Projects< / h2 > < ul >
2022-04-28 19:20:06 +03:00
< li > < a href = "../../../inweb/index.html" > inweb< / a > < / li >
< li > < a href = "../../../intest/index.html" > intest< / a > < / li >
2020-07-04 01:01:02 +03:00
< / ul >
< / nav >
< main role = "main" >
<!-- Weave of 'Diagrams' generated by Inweb -->
< div class = "breadcrumbs" >
2022-04-28 19:37:28 +03:00
< ul class = "crumbs" > < li > < a href = "../index.html" > Home< / a > < / li > < li > < a href = "../services.html" > Services< / a > < / li > < li > < a href = "index.html" > linguistics< / a > < / li > < li > < a href = "index.html#1" > Chapter 1: Setting Up< / a > < / li > < li > < b > Diagrams< / b > < / li > < / ul > < / div >
2020-07-18 20:09:04 +03:00
< p class = "purpose" > To specify standard verb-phrase nodes in the parse tree.< / p >
2020-07-04 01:01:02 +03:00
2020-07-27 02:27:32 +03:00
< ul class = "toc" > < li > < a href = "1-dgr.html#SP6" > § 6. Creation< / a > < / li > < / ul > < hr class = "tocbar" >
2022-05-03 00:59:04 +03:00
< p class = "commentary firstcommentary" > < a id = "SP1" class = "paragraph-anchor" > < / a > < b > § 1. < / b > This section lays out a sort of specification for what we ultimately want
2020-07-18 20:09:04 +03:00
to turn sentences into: i.e., little sentence diagrams made up of parse nodes.
We do that with the aid of the < a href = "../syntax-module/index.html" class = "internal" > syntax< / a > module. So we must first set up
some new node types:
< / p >
2020-07-04 01:01:02 +03:00
2020-08-27 17:50:24 +03:00
< pre class = "definitions code-font" > < span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > L3_NCAT< / span >
2021-04-13 00:32:27 +03:00
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > VERB_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "is"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > UNPARSED_NOUN_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "arfle barfle gloop"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > PRONOUN_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "them"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > DEFECTIVE_NOUN_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "there"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > COMMON_NOUN_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "a container"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > PROPER_NOUN_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "the red handkerchief"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > RELATIONSHIP_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "on"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > CALLED_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "On the table is a container called the box"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > WITH_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "The footstool is a supporter with capacity 2"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > AND_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "whisky and soda"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > KIND_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "A woman is a kind of person"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > PROPERTY_LIST_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "capacity 2"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > X_OF_Y_NT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "description of the painting"< / span >
2020-07-18 20:09:04 +03:00
< / pre >
2020-08-27 17:50:24 +03:00
< p class = "commentary firstcommentary" > < a id = "SP2" class = "paragraph-anchor" > < / a > < b > § 2. < / b > These nodes are annotated with the following:
2020-07-18 20:09:04 +03:00
< / p >
2020-07-04 01:01:02 +03:00
2020-07-18 20:09:04 +03:00
< pre class = "definitions code-font" > < span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > verbal_certainty_ANNOT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > < / span > < span class = "extract" > < span class = "extract-syntax" > int< / span > < / span > < span class = "comment-syntax" > : certainty level if known< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > sentence_is_existential_ANNOT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > < / span > < span class = "extract" > < span class = "extract-syntax" > int< / span > < / span > < span class = "comment-syntax" > : such as "there is a man"< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > linguistic_error_here_ANNOT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > < / span > < span class = "extract" > < span class = "extract-syntax" > int< / span > < / span > < span class = "comment-syntax" > : one of the errors occurred here< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > verb_ANNOT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > < / span > < span class = "extract" > < span class = "extract-syntax" > verb_usage< / span > < / span > < span class = "comment-syntax" > : what's being done here< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > noun_ANNOT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > < / span > < span class = "extract" > < span class = "extract-syntax" > noun_usage< / span > < / span > < span class = "comment-syntax" > : what's being done here< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > article_ANNOT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > < / span > < span class = "extract" > < span class = "extract-syntax" > article_usage< / span > < / span > < span class = "comment-syntax" > : what's being done here< / span >
2020-08-05 14:07:44 +03:00
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > pronoun_ANNOT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > < / span > < span class = "extract" > < span class = "extract-syntax" > pronoun_usage< / span > < / span > < span class = "comment-syntax" > : what's being done here< / span >
2020-07-18 20:09:04 +03:00
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > preposition_ANNOT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > < / span > < span class = "extract" > < span class = "extract-syntax" > preposition< / span > < / span > < span class = "comment-syntax" > : which preposition, if any, qualifies it< / span >
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > second_preposition_ANNOT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > < / span > < span class = "extract" > < span class = "extract-syntax" > preposition< / span > < / span > < span class = "comment-syntax" > : which further preposition, if any, qualifies it< / span >
2020-07-26 18:09:24 +03:00
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > special_meaning_ANNOT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > < / span > < span class = "extract" > < span class = "extract-syntax" > special_meaning_holder< / span > < / span > < span class = "comment-syntax" > : to give a verb a non-standard meaning< / span >
2020-07-18 20:09:04 +03:00
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > occurrence_ANNOT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > < / span > < span class = "extract" > < span class = "extract-syntax" > time_period< / span > < / span > < span class = "comment-syntax" > : any stipulation on occurrence< / span >
2020-07-19 20:31:23 +03:00
< span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > relationship_ANNOT< / span > < span class = "plain-syntax" > < / span > < span class = "comment-syntax" > < / span > < span class = "extract" > < span class = "extract-syntax" > binary_predicate< / span > < / span > < span class = "comment-syntax" > : for RELATIONSHIP nodes< / span >
2020-07-18 20:09:04 +03:00
< / pre >
< pre class = "displayed-code all-displayed-code code-font" >
< span class = "identifier-syntax" > DECLARE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > verb< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > verb_usage< / span > < span class = "plain-syntax" > )< / span >
< span class = "identifier-syntax" > DECLARE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > noun< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > noun_usage< / span > < span class = "plain-syntax" > )< / span >
< span class = "identifier-syntax" > DECLARE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > pronoun< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > pronoun_usage< / span > < span class = "plain-syntax" > )< / span >
< span class = "identifier-syntax" > DECLARE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > article< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > article_usage< / span > < span class = "plain-syntax" > )< / span >
< span class = "identifier-syntax" > DECLARE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > preposition< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > preposition< / span > < span class = "plain-syntax" > )< / span >
< span class = "identifier-syntax" > DECLARE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > second_preposition< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > preposition< / span > < span class = "plain-syntax" > )< / span >
2020-07-26 18:09:24 +03:00
< span class = "identifier-syntax" > DECLARE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > special_meaning< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > special_meaning_holder< / span > < span class = "plain-syntax" > )< / span >
2020-07-18 20:09:04 +03:00
< span class = "identifier-syntax" > DECLARE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > occurrence< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > time_period< / span > < span class = "plain-syntax" > )< / span >
2020-07-04 01:01:02 +03:00
2020-07-18 20:09:04 +03:00
< span class = "identifier-syntax" > MAKE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > verb< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > verb_usage< / span > < span class = "plain-syntax" > )< / span >
< span class = "identifier-syntax" > MAKE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > noun< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > noun_usage< / span > < span class = "plain-syntax" > )< / span >
< span class = "identifier-syntax" > MAKE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > pronoun< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > pronoun_usage< / span > < span class = "plain-syntax" > )< / span >
< span class = "identifier-syntax" > MAKE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > article< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > article_usage< / span > < span class = "plain-syntax" > )< / span >
< span class = "identifier-syntax" > MAKE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > preposition< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > preposition< / span > < span class = "plain-syntax" > )< / span >
< span class = "identifier-syntax" > MAKE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > second_preposition< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > preposition< / span > < span class = "plain-syntax" > )< / span >
2020-07-26 18:09:24 +03:00
< span class = "identifier-syntax" > MAKE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > special_meaning< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > special_meaning_holder< / span > < span class = "plain-syntax" > )< / span >
2020-07-18 20:09:04 +03:00
< span class = "identifier-syntax" > MAKE_ANNOTATION_FUNCTIONS< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > occurrence< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > time_period< / span > < span class = "plain-syntax" > )< / span >
< / pre >
2020-08-27 17:50:24 +03:00
< p class = "commentary firstcommentary" > < a id = "SP3" class = "paragraph-anchor" > < / a > < b > § 3. < / b > < / p >
2020-08-07 00:01:38 +03:00
< pre class = "displayed-code all-displayed-code code-font" >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::declare_annotations< / span > < button class = "popup" onclick = "togglePopup('usagePopup1')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup1" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::declare_annotations< / span > < / span > :< br / > Linguistics Module - < a href = "1-lm.html#SP3" > § 3< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::declare_type< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > verbal_certainty_ANNOT< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP3" class = "function-link" > < span class = "function-syntax" > Diagrams::write_verbal_certainty_ANNOT< / span > < / a > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::declare_type< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > sentence_is_existential_ANNOT< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP3" class = "function-link" > < span class = "function-syntax" > Diagrams::write_sentence_is_existential_ANNOT< / span > < / a > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::declare_type< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > linguistic_error_here_ANNOT< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP3" class = "function-link" > < span class = "function-syntax" > Diagrams::write_linguistic_error_here_ANNOT< / span > < / a > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::declare_type< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > verb_ANNOT< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP3" class = "function-link" > < span class = "function-syntax" > Diagrams::write_verb_ANNOT< / span > < / a > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::declare_type< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > noun_ANNOT< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP3" class = "function-link" > < span class = "function-syntax" > Diagrams::write_noun_ANNOT< / span > < / a > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::declare_type< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > article_ANNOT< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP3" class = "function-link" > < span class = "function-syntax" > Diagrams::write_article_ANNOT< / span > < / a > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::declare_type< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > pronoun_ANNOT< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP3" class = "function-link" > < span class = "function-syntax" > Diagrams::write_pronoun_ANNOT< / span > < / a > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::declare_type< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > preposition_ANNOT< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP3" class = "function-link" > < span class = "function-syntax" > Diagrams::write_preposition_ANNOT< / span > < / a > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::declare_type< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > second_preposition_ANNOT< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP3" class = "function-link" > < span class = "function-syntax" > Diagrams::write_second_preposition_ANNOT< / span > < / a > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::declare_type< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > special_meaning_ANNOT< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP3" class = "function-link" > < span class = "function-syntax" > Diagrams::write_special_meaning_ANNOT< / span > < / a > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::declare_type< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > occurrence_ANNOT< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP3" class = "function-link" > < span class = "function-syntax" > Diagrams::write_occurrence_ANNOT< / span > < / a > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::declare_type< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > relationship_ANNOT< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP3" class = "function-link" > < span class = "function-syntax" > Diagrams::write_relationship_ANNOT< / span > < / a > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::write_verbal_certainty_ANNOT< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > text_stream< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Annotations::read_int< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > verbal_certainty_ANNOT< / span > < span class = "plain-syntax" > ) != < / span > < span class = "constant-syntax" > UNKNOWN_CE< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > " {certainty:"< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < a href = "3-aoc.html#SP3" class = "function-link" > < span class = "function-syntax" > Certainty::write< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Annotations::read_int< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > verbal_certainty_ANNOT< / span > < span class = "plain-syntax" > ));< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > "}"< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::write_sentence_is_existential_ANNOT< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > text_stream< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Annotations::read_int< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > sentence_is_existential_ANNOT< / span > < span class = "plain-syntax" > ))< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > " {existential}"< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::write_linguistic_error_here_ANNOT< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > text_stream< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > " {error: "< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > switch< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Annotations::read_int< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > linguistic_error_here_ANNOT< / span > < span class = "plain-syntax" > )) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > case< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > TwoLikelihoods_LINERROR:< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > " two likelihoods"< / span > < span class = "plain-syntax" > ); < / span > < span class = "reserved-syntax" > break< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > default:< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > "unknown"< / span > < span class = "plain-syntax" > ); < / span > < span class = "reserved-syntax" > break< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > }< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > "}"< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::write_verb_ANNOT< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > text_stream< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Node::get_verb< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ))< / span >
< span class = "plain-syntax" > < / span > < a href = "3-vu.html#SP2" class = "function-link" > < span class = "function-syntax" > VerbUsages::write_usage< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Node::get_verb< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ));< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::write_noun_ANNOT< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > text_stream< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Node::get_noun< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ))< / span >
< span class = "plain-syntax" > < / span > < a href = "2-nns.html#SP5" class = "function-link" > < span class = "function-syntax" > Nouns::write_usage< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Node::get_noun< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ));< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::write_article_ANNOT< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > text_stream< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Node::get_article< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ))< / span >
< span class = "plain-syntax" > < / span > < a href = "2-art.html#SP3" class = "function-link" > < span class = "function-syntax" > Articles::write_usage< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Node::get_article< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ));< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::write_pronoun_ANNOT< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > text_stream< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Node::get_pronoun< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ))< / span >
< span class = "plain-syntax" > < / span > < a href = "2-prn.html#SP3" class = "function-link" > < span class = "function-syntax" > Pronouns::write_usage< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Node::get_pronoun< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ));< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::write_preposition_ANNOT< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > text_stream< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Node::get_preposition< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > )) {< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > " {prep1: "< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < a href = "3-prp.html#SP5" class = "function-link" > < span class = "function-syntax" > Prepositions::log< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Node::get_preposition< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ));< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > "}"< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::write_second_preposition_ANNOT< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > text_stream< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Node::get_second_preposition< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > )) {< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > " {prep2: "< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < a href = "3-prp.html#SP5" class = "function-link" > < span class = "function-syntax" > Prepositions::log< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Node::get_second_preposition< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ));< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > "}"< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::write_special_meaning_ANNOT< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > text_stream< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Node::get_special_meaning< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ))< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > " {special meaning: %S}"< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < a href = "3-sm.html#SP7" class = "function-link" > < span class = "function-syntax" > SpecialMeanings::get_name< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Node::get_special_meaning< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > )));< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::write_occurrence_ANNOT< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > text_stream< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Node::get_occurrence< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > )) {< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > " {occurrence: "< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < a href = "3-apoo.html#SP4" class = "function-link" > < span class = "function-syntax" > Occurrence::log< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Node::get_occurrence< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ));< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > "}"< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::write_relationship_ANNOT< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > text_stream< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > OUT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Node::get_relationship< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > ))< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > WRITE< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > " {meaning: %S}"< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Node::get_relationship< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > p< / span > < span class = "plain-syntax" > )-> < / span > < span class = "identifier-syntax" > debugging_log_name< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
< / pre >
2020-08-27 17:50:24 +03:00
< p class = "commentary firstcommentary" > < a id = "SP4" class = "paragraph-anchor" > < / a > < b > § 4. < / b > The < span class = "extract" > < span class = "extract-syntax" > linguistic_error_here_ANNOT< / span > < / span > annotation is for any errors we find:
2020-07-18 20:09:04 +03:00
< / p >
< pre class = "definitions code-font" > < span class = "definition-keyword" > enum< / span > < span class = "constant-syntax" > TwoLikelihoods_LINERROR< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > from< / span > < span class = "plain-syntax" > < / span > < span class = "constant-syntax" > 1< / span >
< / pre >
2020-08-27 17:50:24 +03:00
< p class = "commentary firstcommentary" > < a id = "SP5" class = "paragraph-anchor" > < / a > < b > § 5. < / b > Two callbacks are needed so that the < a href = "../syntax-module/index.html" class = "internal" > syntax< / a > module will create the above
2020-07-18 20:09:04 +03:00
nodes and annotations correctly:
< / p >
2020-08-07 00:01:38 +03:00
< pre class = "definitions code-font" > < span class = "definition-keyword" > define< / span > < span class = "constant-syntax" > EVEN_MORE_NODE_METADATA_SETUP_SYNTAX_CALLBACK< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP5" class = "function-link" > < span class = "function-syntax" > Diagrams::setup< / span > < / a >
2020-08-27 17:50:24 +03:00
< span class = "definition-keyword" > define< / span > < span class = "constant-syntax" > EVEN_MORE_PARENTAGE_PERMISSIONS_SYNTAX_CALLBACK< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP5" class = "function-link" > < span class = "function-syntax" > Diagrams::parentage_permission< / span > < / a >
2020-08-07 00:01:38 +03:00
< span class = "definition-keyword" > define< / span > < span class = "constant-syntax" > EVEN_MORE_ANNOTATION_PERMISSIONS_SYNTAX_CALLBACK< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP5" class = "function-link" > < span class = "function-syntax" > Diagrams::permissions< / span > < / a >
2020-07-18 20:09:04 +03:00
< / pre >
< pre class = "displayed-code all-displayed-code code-font" >
2020-07-04 01:01:02 +03:00
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::setup< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > ) {< / span >
2020-08-27 17:50:24 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > VERB_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "VERB_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > );< / span >
2021-04-13 00:32:27 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > RELATIONSHIP_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "RELATIONSHIP_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 2< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > ASSERT_NFLAG< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > CALLED_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "CALLED_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 2< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 2< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > WITH_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "WITH_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 2< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 2< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > ASSERT_NFLAG< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > AND_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "AND_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 2< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 2< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > ASSERT_NFLAG< / span > < span class = "plain-syntax" > );< / span >
2020-08-27 17:50:24 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > KIND_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "KIND_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 1< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > ASSERT_NFLAG< / span > < span class = "plain-syntax" > );< / span >
2021-04-13 00:32:27 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > UNPARSED_NOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "UNPARSED_NOUN_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > ASSERT_NFLAG< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > PRONOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "PRONOUN_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > ASSERT_NFLAG< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > DEFECTIVE_NOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "DEFECTIVE_NOUN_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > ASSERT_NFLAG< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > PROPER_NOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "PROPER_NOUN_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > ASSERT_NFLAG< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > COMMON_NOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "COMMON_NOUN_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > INFTY< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > ASSERT_NFLAG< / span > < span class = "plain-syntax" > );< / span >
2020-08-27 17:50:24 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > PROPERTY_LIST_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "PROPERTY_LIST_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > INFTY< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > ASSERT_NFLAG< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::new< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > X_OF_Y_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > I< / span > < span class = "string-syntax" > "X_OF_Y_NT"< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 2< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > 2< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > ASSERT_NFLAG< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::parentage_permission< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::allow_parentage_for_categories< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > L2_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NodeType::allow_parentage_for_categories< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > );< / span >
2020-07-04 01:01:02 +03:00
< span class = "plain-syntax" > }< / span >
< span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::permissions< / span > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > void< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > VERB_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > verbal_certainty_ANNOT< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > VERB_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > sentence_is_existential_ANNOT< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > VERB_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > verb_ANNOT< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > VERB_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > preposition_ANNOT< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > VERB_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > second_preposition_ANNOT< / span > < span class = "plain-syntax" > );< / span >
2020-07-26 18:09:24 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > VERB_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > special_meaning_ANNOT< / span > < span class = "plain-syntax" > );< / span >
2020-07-18 20:09:04 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > VERB_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > occurrence_ANNOT< / span > < span class = "plain-syntax" > );< / span >
2020-07-19 20:31:23 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > UNPARSED_NOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > noun_ANNOT< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > PRONOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > pronoun_ANNOT< / span > < span class = "plain-syntax" > );< / span >
2020-07-04 16:17:00 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > PROPER_NOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > noun_ANNOT< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > COMMON_NOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > noun_ANNOT< / span > < span class = "plain-syntax" > );< / span >
2020-07-04 01:01:02 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > RELATIONSHIP_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > preposition_ANNOT< / span > < span class = "plain-syntax" > );< / span >
2020-07-19 20:31:23 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > RELATIONSHIP_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > relationship_ANNOT< / span > < span class = "plain-syntax" > );< / span >
2020-08-27 17:50:24 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow_for_category< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > linguistic_error_here_ANNOT< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Annotations::allow_for_category< / span > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > L3_NCAT< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > article_ANNOT< / span > < span class = "plain-syntax" > );< / span >
2020-07-04 01:01:02 +03:00
< span class = "plain-syntax" > }< / span >
< / pre >
2020-08-27 17:50:24 +03:00
< p class = "commentary firstcommentary" > < a id = "SP6" class = "paragraph-anchor" > < / a > < b > § 6. Creation. < / b > The following functions create leaves, or very minor twigs, used in sentence
2020-07-27 02:27:32 +03:00
diagrams.
< / p >
< pre class = "displayed-code all-displayed-code code-font" >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_arity0< / span > < button class = "popup" onclick = "togglePopup('usagePopup2')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup2" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_arity0< / span > < / span > :< br / > < a href = "1-dgr.html#SP7" > § 7< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > node_type_t< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > t< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > wording< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > ) {< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > Node::new< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > t< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Node::set_text< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > }< / span >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_arity1< / span > < button class = "popup" onclick = "togglePopup('usagePopup3')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup3" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_arity1< / span > < / span > :< br / > < a href = "1-dgr.html#SP7" > § 7< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > node_type_t< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > t< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > wording< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > A< / span > < span class = "plain-syntax" > ) {< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > Node::new< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > t< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Node::set_text< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > A< / span > < span class = "plain-syntax" > == < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ) < / span > < span class = "identifier-syntax" > internal_error< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > "no child of arity-1 node"< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > -> < / span > < span class = "identifier-syntax" > down< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > A< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > }< / span >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_arity2< / span > < button class = "popup" onclick = "togglePopup('usagePopup4')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup4" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_arity2< / span > < / span > :< br / > < a href = "1-dgr.html#SP7" > § 7< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > node_type_t< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > t< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > wording< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > A< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > B< / span > < span class = "plain-syntax" > ) {< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > Node::new< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > t< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Node::set_text< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > A< / span > < span class = "plain-syntax" > == < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ) < / span > < span class = "identifier-syntax" > internal_error< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > "no first child of arity-2 node"< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > B< / span > < span class = "plain-syntax" > == < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ) < / span > < span class = "identifier-syntax" > internal_error< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > "no second child of arity-2 node"< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > -> < / span > < span class = "identifier-syntax" > down< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > A< / span > < span class = "plain-syntax" > ; < / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > -> < / span > < span class = "identifier-syntax" > down< / span > < span class = "plain-syntax" > -> < / span > < span class = "identifier-syntax" > next< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > B< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > }< / span >
< / pre >
2020-08-27 17:50:24 +03:00
< p class = "commentary firstcommentary" > < a id = "SP7" class = "paragraph-anchor" > < / a > < b > § 7. < / b > And those are then used to make the following.
2020-07-27 02:27:32 +03:00
< / p >
< p class = "commentary" > Note that if the variable < span class = "extract" > < span class = "extract-syntax" > preform_lookahead_mode< / span > < / span > is set, then all these
functions return < span class = "extract" > < span class = "extract-syntax" > NULL< / span > < / span > : this optimisation prevents us from creating millions
of useless nodes when all that's happening is that the sentence parser is
looking ahead speculatively.< sup id = "fnref:1" > < a href = "#fn:1" rel = "footnote" > 1< / a > < / sup >
< / p >
< ul class = "footnotetexts" > < li class = "footnote" id = "fn:1" > < p class = "inwebfootnote" > < sup id = "fnref:1" > < a href = "#fn:1" rel = "footnote" > 1< / a > < / sup > At one time Inform used garbage collection to reclaim discarded nodes
instead, but it turned out to be more efficient not to make garbage in the
first place: a lesson there for all of us.
< a href = "#fnref:1" title = "return to text" > ↩ < / a > < / p > < / li > < / ul >
< pre class = "displayed-code all-displayed-code code-font" >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_UNPARSED_NOUN< / span > < button class = "popup" onclick = "togglePopup('usagePopup5')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup5" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_UNPARSED_NOUN< / span > < / span > :< br / > Noun Phrases - < a href = "4-np.html#SP2" > § 2< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > wording< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > ) {< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > preform_lookahead_mode< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP6" class = "function-link" > < span class = "function-syntax" > Diagrams::new_arity0< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > UNPARSED_NOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_DEFECTIVE< / span > < button class = "popup" onclick = "togglePopup('usagePopup6')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup6" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_DEFECTIVE< / span > < / span > :< br / > Noun Phrases - < a href = "4-np.html#SP4" > § 4< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > wording< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > ) {< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > preform_lookahead_mode< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP6" class = "function-link" > < span class = "function-syntax" > Diagrams::new_arity0< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > DEFECTIVE_NOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_PROPER_NOUN< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > wording< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > preform_lookahead_mode< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP6" class = "function-link" > < span class = "function-syntax" > Diagrams::new_arity0< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > PROPER_NOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_PROPERTY_LIST< / span > < button class = "popup" onclick = "togglePopup('usagePopup7')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup7" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_PROPERTY_LIST< / span > < / span > :< br / > Noun Phrases - < a href = "4-np.html#SP17" > § 17< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > wording< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > ) {< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > preform_lookahead_mode< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP6" class = "function-link" > < span class = "function-syntax" > Diagrams::new_arity0< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > PROPERTY_LIST_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_PRONOUN< / span > < button class = "popup" onclick = "togglePopup('usagePopup8')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup8" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_PRONOUN< / span > < / span > :< br / > Noun Phrases - < a href = "4-np.html#SP16" > § 16< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > wording< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > , < / span > < span class = "reserved-syntax" > pronoun_usage< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > pro< / span > < span class = "plain-syntax" > ) {< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > preform_lookahead_mode< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > PN< / span > < span class = "plain-syntax" > = < / span > < a href = "1-dgr.html#SP6" class = "function-link" > < span class = "function-syntax" > Diagrams::new_arity0< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > PRONOUN_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Node::set_pronoun< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > PN< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > pro< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > PN< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > }< / span >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_KIND< / span > < button class = "popup" onclick = "togglePopup('usagePopup9')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup9" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_KIND< / span > < / span > :< br / > Noun Phrases - < a href = "4-np.html#SP19" > § 19< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > wording< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > O< / span > < span class = "plain-syntax" > ) {< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > preform_lookahead_mode< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > O< / span > < span class = "plain-syntax" > == < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP6" class = "function-link" > < span class = "function-syntax" > Diagrams::new_arity0< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > KIND_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP6" class = "function-link" > < span class = "function-syntax" > Diagrams::new_arity1< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > KIND_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > O< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_RELATIONSHIP< / span > < button class = "popup" onclick = "togglePopup('usagePopup10')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup10" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_RELATIONSHIP< / span > < / span > :< br / > Noun Phrases - < a href = "4-np.html#SP15_1" > § 15.1< / a > < br / > Verb Phrases - < a href = "4-vp.html#SP7_1" > § 7.1< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > wording< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > VERB_MEANING_LINGUISTICS_TYPE< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > R< / span > < span class = "plain-syntax" > ,< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > O< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > preform_lookahead_mode< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > = < / span > < a href = "1-dgr.html#SP6" class = "function-link" > < span class = "function-syntax" > Diagrams::new_arity1< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > RELATIONSHIP_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > O< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > Node::set_relationship< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > R< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > P< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > }< / span >
2020-08-02 14:35:36 +03:00
< span class = "reserved-syntax" > int< / span > < span class = "plain-syntax" > < / span > < span class = "function-syntax" > Diagrams::is_possessive_RELATIONSHIP< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > py< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > ((< / span > < span class = "identifier-syntax" > py< / span > < span class = "plain-syntax" > ) & & (< / span > < span class = "identifier-syntax" > Node::get_type< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > py< / span > < span class = "plain-syntax" > ) == < / span > < span class = "constant-syntax" > RELATIONSHIP_NT< / span > < span class = "plain-syntax" > ) & & < / span >
< span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Node::get_relationship< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > py< / span > < span class = "plain-syntax" > )) & & < / span >
< span class = "plain-syntax" > (< / span > < a href = "3-vm.html#SP2" class = "function-link" > < span class = "function-syntax" > VerbMeanings::reverse_VMT< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > Node::get_relationship< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > py< / span > < span class = "plain-syntax" > )) == < / span > < span class = "identifier-syntax" > VERB_MEANING_POSSESSION< / span > < span class = "plain-syntax" > ))< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > TRUE< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > FALSE< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > }< / span >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_implied_RELATIONSHIP< / span > < button class = "popup" onclick = "togglePopup('usagePopup11')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup11" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_implied_RELATIONSHIP< / span > < / span > :< br / > Noun Phrases - < a href = "4-np.html#SP14_1" > § 14.1< / a > , < a href = "4-np.html#SP14_2" > § 14.2< / a > , < a href = "4-np.html#SP14_3" > § 14.3< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > wording< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > , < / span > < span class = "constant-syntax" > VERB_MEANING_LINGUISTICS_TYPE< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > R< / span > < span class = "plain-syntax" > ) {< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > preform_lookahead_mode< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP7" class = "function-link" > < span class = "function-syntax" > Diagrams::new_RELATIONSHIP< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > R< / span > < span class = "plain-syntax" > , < / span > < a href = "1-dgr.html#SP7" class = "function-link" > < span class = "function-syntax" > Diagrams::new_PRONOUN< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > , < / span > < a href = "2-prn.html#SP5" class = "function-link" > < span class = "function-syntax" > Pronouns::get_implied< / span > < / a > < span class = "plain-syntax" > ()));< / span >
< span class = "plain-syntax" > }< / span >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_AND< / span > < button class = "popup" onclick = "togglePopup('usagePopup12')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup12" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_AND< / span > < / span > :< br / > Noun Phrases - < a href = "4-np.html#SP8" > § 8< / a > , < a href = "4-np.html#SP9" > § 9< / a > , < a href = "4-np.html#SP16" > § 16< / a > , < a href = "4-np.html#SP17" > § 17< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > int< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > wn< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > X< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > Y< / span > < span class = "plain-syntax" > ) {< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > preform_lookahead_mode< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ;< / span >
2020-07-28 02:35:58 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP6" class = "function-link" > < span class = "function-syntax" > Diagrams::new_arity2< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > AND_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Wordings::one_word< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > wn< / span > < span class = "plain-syntax" > ), < / span > < span class = "identifier-syntax" > X< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Y< / span > < span class = "plain-syntax" > );< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > }< / span >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_WITH< / span > < button class = "popup" onclick = "togglePopup('usagePopup13')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup13" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_WITH< / span > < / span > :< br / > Noun Phrases - < a href = "4-np.html#SP16" > § 16< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "reserved-syntax" > int< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > wn< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > X< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > Y< / span > < span class = "plain-syntax" > ) {< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > preform_lookahead_mode< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ;< / span >
2020-07-28 02:35:58 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP6" class = "function-link" > < span class = "function-syntax" > Diagrams::new_arity2< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > WITH_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Wordings::one_word< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > wn< / span > < span class = "plain-syntax" > ), < / span > < span class = "identifier-syntax" > X< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Y< / span > < span class = "plain-syntax" > );< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > }< / span >
2020-08-07 00:01:38 +03:00
< span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "function-syntax" > Diagrams::new_CALLED< / span > < button class = "popup" onclick = "togglePopup('usagePopup14')" > < span class = "comment-syntax" > ?< / span > < span class = "popuptext" id = "usagePopup14" > Usage of < span class = "code-font" > < span class = "function-syntax" > Diagrams::new_CALLED< / span > < / span > :< br / > Noun Phrases - < a href = "4-np.html#SP16" > § 16< / a > < / span > < / button > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > wording< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > X< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > parse_node< / span > < span class = "plain-syntax" > *< / span > < span class = "identifier-syntax" > Y< / span > < span class = "plain-syntax" > ) {< / span >
2020-07-27 02:27:32 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > preform_lookahead_mode< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > NULL< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < a href = "1-dgr.html#SP6" class = "function-link" > < span class = "function-syntax" > Diagrams::new_arity2< / span > < / a > < span class = "plain-syntax" > (< / span > < span class = "constant-syntax" > CALLED_NT< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > W< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > X< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > Y< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > }< / span >
< / pre >
2020-07-04 01:01:02 +03:00
< nav role = "progress" > < div class = "progresscontainer" >
2020-07-18 20:09:04 +03:00
< ul class = "progressbar" > < li class = "progressprev" > < a href = "1-lm.html" > ❮ < / a > < / li > < li class = "progresschapter" > < a href = "P-wtmd.html" > P< / a > < / li > < li class = "progresscurrentchapter" > 1< / li > < li class = "progresssection" > < a href = "1-lm.html" > lm< / a > < / li > < li class = "progresscurrent" > dgr< / li > < li class = "progresssection" > < a href = "1-sc.html" > sc< / a > < / li > < li class = "progresssection" > < a href = "1-cao.html" > cao< / a > < / li > < li class = "progresschapter" > < a href = "2-adj.html" > 2< / a > < / li > < li class = "progresschapter" > < a href = "3-vrb.html" > 3< / a > < / li > < li class = "progresschapter" > < a href = "4-np.html" > 4< / a > < / li > < li class = "progressnext" > < a href = "1-sc.html" > ❯ < / a > < / li > < / ul > < / div >
2020-07-04 01:01:02 +03:00
< / nav > <!-- End of weave -->
< / main >
< / body >
< / html >