 2a04455955
			
		
	
	
		2a04455955
		
			
		
	
	
	
	
		
			
			These Makefiles were beautiful, but now that the org_mode_samples are integrated into the rust test framework, it no longer makes sense to keep using these Makefiles. Instead, running scripts/run_integration_test.bash <org file under org_mode_samples>... will output the same information, additional information, and it will do it all without writing anything to disk (besides any files generated during compilation).
What are the possible element containers
Sections
Sections are divided by headlines.
  Zeroth section
  * First headline
  First section
  ** Child headline
  Child section
  * Second top-level headline
  Second top-level sectionGreater blocks
  #+begin_center
  elements
  #+end_centerDrawers
  :drawername:
  elements
  :end:Dynamic blocks
  * Headline
  #+BEGIN: clocktable :scope subtree :maxlevel 2
  #+CAPTION: Clock summary at [2023-04-16 Sun 16:13]
  | Headline     | Time   |
  |--------------+--------|
  | *Total time* | *0:00* |
  #+END:Footnote definitions
  [fn:1] A footnote definition.
  [fn:2] A multi-line
  footnote definition.Plain Lists
  1. foo
     1. bar
  2. bazWhich container takes priority
This test interleaves the opening and closing of each element container to see which element becomes parsed vs gets broken up. The row determines the first opening element and the column determines the second opening element.
| Section | Greater Block | Drawer | Dynamic Block | Footnote Definition | Plain List | Paragraph | |
|---|---|---|---|---|---|---|---|
| Section | - | Section | Section | Section | Section | Section | Section | 
| Greater Block | Section | First | First | First | First | First | First | 
| Drawer | Section | First | First | First | First | First | First | 
| Dynamic Block | Section | First | First | First | First | First | First | 
| Footnote Definition | Section | First | First | First | - | - | - | 
| Plain List | Section | Second | Second | Second | - | - | - | 
| Paragraph | Section | Second | Second | Second | - | - | - | 
Possible solutions
Greater blocks, drawers, and dynamic blocks disable plain list exit matcher
Test Case 1
  1. foo
     #+begin_center
     2. bar
     baz
     #+end_centerParse out headlines first
Then go through elements parsing them in-order
Should paragraph exit matcher apply to the element matcher in the exit matcher
No. But paragraph exit matcher needs to apply to the object matcher.
Maybe two groups of elements: alpha and beta
When entering an alpha element, ignore beta exit matchers above this in the context.