Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package maeparser for openSUSE:Factory 
checked in at 2022-09-07 11:06:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/maeparser (Old)
 and      /work/SRC/openSUSE:Factory/.maeparser.new.2083 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "maeparser"

Wed Sep  7 11:06:20 2022 rev:2 rq:1001520 version:1.3.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/maeparser/maeparser.changes      2022-08-24 
15:11:39.424533117 +0200
+++ /work/SRC/openSUSE:Factory/.maeparser.new.2083/maeparser.changes    
2022-09-07 11:06:39.896502349 +0200
@@ -1,0 +2,10 @@
+Tue Sep  6 19:51:16 UTC 2022 - Antoine Belvire <antoine.belv...@opensuse.org>
+
+- Update to version 1.3.0:
+  * Add two methods to get sub-block names:
+    + std::vector<std::string> Block::getBlockNames() const;
+    + std::vector<std::string> Block::getIndexedBlockNames() const;
+  * Fix some build issues.
+- Remove upstreamed maeparser-1.2.4-cmake-config-installdir.patch.
+
+-------------------------------------------------------------------

Old:
----
  maeparser-1.2.4-cmake-config-installdir.patch
  maeparser-1.2.4.tar.gz

New:
----
  maeparser-1.3.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ maeparser.spec ++++++
--- /var/tmp/diff_new_pack.8wIpS9/_old  2022-09-07 11:06:40.332503457 +0200
+++ /var/tmp/diff_new_pack.8wIpS9/_new  2022-09-07 11:06:40.336503467 +0200
@@ -18,14 +18,12 @@
 
 %define abiver 1
 Name:           maeparser
-Version:        1.2.4
+Version:        1.3.0
 Release:        0
 Summary:        Maestro file parser
 License:        MIT
 URL:            https://github.com/schrodinger/maeparser
 Source:         
https://github.com/schrodinger/maeparser/archive/v%{version}/%{name}-%{version}.tar.gz
-# PATCH-FIX-UPSTREAM maeparser-1.2.4-cmake-config-installdir.patch -- 
gh#schrodinger/maeparser!73
-Patch0:         maeparser-1.2.4-cmake-config-installdir.patch
 BuildRequires:  c++_compiler
 BuildRequires:  cmake
 BuildRequires:  libboost_filesystem-devel

++++++ maeparser-1.2.4.tar.gz -> maeparser-1.3.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/.azure-pipelines/linux_build.yml 
new/maeparser-1.3.0/.azure-pipelines/linux_build.yml
--- old/maeparser-1.2.4/.azure-pipelines/linux_build.yml        2020-10-13 
19:18:02.000000000 +0200
+++ new/maeparser-1.3.0/.azure-pipelines/linux_build.yml        2022-09-06 
20:31:33.000000000 +0200
@@ -7,7 +7,7 @@
       conda info -a
       conda create --name maeparser_build $(compiler) cmake \
           boost-cpp=$(boost_version) boost=$(boost_version) \
-          libboost=$(boost_version)
+          libboost=$(boost_version) zlib
     displayName: Setup build environment
   - bash: |
       source ${CONDA}/etc/profile.d/conda.sh
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/.azure-pipelines/vs_build.yml 
new/maeparser-1.3.0/.azure-pipelines/vs_build.yml
--- old/maeparser-1.2.4/.azure-pipelines/vs_build.yml   2020-10-13 
19:18:02.000000000 +0200
+++ new/maeparser-1.3.0/.azure-pipelines/vs_build.yml   2022-09-06 
20:31:33.000000000 +0200
@@ -13,7 +13,7 @@
       mkdir build && cd build
       call activate maeparser_build
       cmake .. ^
-      -G "Visual Studio 15 2017 Win64" ^
+      -G "Visual Studio 16 2019" ^
       -DCMAKE_BUILD_TYPE=Release ^
       -DMAEPARSER_RIGOROUS_BUILD=ON ^
       -DBoost_NO_SYSTEM_PATHS=ON ^
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/CMakeLists.txt 
new/maeparser-1.3.0/CMakeLists.txt
--- old/maeparser-1.2.4/CMakeLists.txt  2020-10-13 19:18:02.000000000 +0200
+++ new/maeparser-1.3.0/CMakeLists.txt  2022-09-06 20:31:33.000000000 +0200
@@ -55,7 +55,7 @@
 
 SET_TARGET_PROPERTIES (maeparser
     PROPERTIES
-       VERSION 1.2.4
+       VERSION 1.3.0
        SOVERSION 1
 )
 
@@ -78,7 +78,7 @@
 
 INSTALL(EXPORT maeparser-targets
     FILE ${PROJECT_NAME}-config.cmake
-    DESTINATION lib/cmake)
+    DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake)
 
 file(GLOB mae_headers "*.hpp")
 install(FILES ${mae_headers} DESTINATION include/maeparser)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/MaeBlock.cpp 
new/maeparser-1.3.0/MaeBlock.cpp
--- old/maeparser-1.2.4/MaeBlock.cpp    2020-10-13 19:18:02.000000000 +0200
+++ new/maeparser-1.3.0/MaeBlock.cpp    2022-09-06 20:31:33.000000000 +0200
@@ -202,7 +202,7 @@
     return true;
 }
 
-bool IndexedBlockMapI::operator==(const IndexedBlockMapI& rhs)
+bool IndexedBlockMapI::operator==(const IndexedBlockMapI& rhs) const
 {
     const auto& block_names = getBlockNames();
     for (const auto& name : block_names) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/MaeBlock.hpp 
new/maeparser-1.3.0/MaeBlock.hpp
--- old/maeparser-1.2.4/MaeBlock.hpp    2020-10-13 19:18:02.000000000 +0200
+++ new/maeparser-1.3.0/MaeBlock.hpp    2022-09-06 20:31:33.000000000 +0200
@@ -43,7 +43,7 @@
     getIndexedBlock(const std::string& name) const = 0;
 
     virtual std::vector<std::string> getBlockNames() const = 0;
-    bool operator==(const IndexedBlockMapI& rhs);
+    bool operator==(const IndexedBlockMapI& rhs) const;
 };
 
 class EXPORT_MAEPARSER IndexedBlockMap : public IndexedBlockMapI
@@ -102,9 +102,8 @@
      * Add an IndexedBlockBuffer to the map, which can be used to retrieve an
      * IndexedBlock.
      */
-    void
-    addIndexedBlockBuffer(const std::string& name,
-                          std::shared_ptr<IndexedBlockBuffer> block_buffer)
+    void addIndexedBlockBuffer(const std::string& name,
+                               std::shared_ptr<IndexedBlockBuffer> 
block_buffer)
     {
         m_indexed_buffer[name] = std::move(block_buffer);
     }
@@ -154,7 +153,10 @@
     std::shared_ptr<const IndexedBlock>
     getIndexedBlock(const std::string& name) const;
 
-    void addBlock(std::shared_ptr<Block> b) { m_sub_block[b->getName()] = 
std::move(b); }
+    void addBlock(std::shared_ptr<Block> b)
+    {
+        m_sub_block[b->getName()] = std::move(b);
+    }
 
     /**
      * Check whether this block has a sub-block of the provided name.
@@ -169,7 +171,7 @@
     /**
      * Retrieve a shared pointer to the named sub-block.
      */
-    std::shared_ptr<Block> getBlock(const std::string& name)
+    std::shared_ptr<Block> getBlock(const std::string& name) const
     {
         std::map<std::string, std::shared_ptr<Block>>::const_iterator iter =
             m_sub_block.find(name);
@@ -180,6 +182,26 @@
         }
     }
 
+    /**
+     * Get the names of all non-indexed sub-blocks
+     */
+    std::vector<std::string> getBlockNames() const
+    {
+        std::vector<std::string> names;
+        for (auto& n : m_sub_block) {
+            names.push_back(n.first);
+        }
+        return names;
+    }
+
+    /**
+     * Get the names of all indexed sub-blocks
+     */
+    std::vector<std::string> getIndexedBlockNames() const
+    {
+        return m_indexed_block_map->getBlockNames();
+    }
+
     bool operator==(const Block& rhs) const;
 
     bool hasRealProperty(const std::string& name) const
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/MaeConstants.hpp 
new/maeparser-1.3.0/MaeConstants.hpp
--- old/maeparser-1.2.4/MaeConstants.hpp        2020-10-13 19:18:02.000000000 
+0200
+++ new/maeparser-1.3.0/MaeConstants.hpp        2022-09-06 20:31:33.000000000 
+0200
@@ -20,6 +20,7 @@
 const char* const BOND_ATOM_1 = "i_m_from";
 const char* const BOND_ATOM_2 = "i_m_to";
 const char* const BOND_ORDER = "i_m_order";
+const char* const DEPEND_BLOCK = "m_depend";
 
 /**
  * These are the prefixes used to store stereochemical properties in Maestro
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/MaeParserConfig.hpp 
new/maeparser-1.3.0/MaeParserConfig.hpp
--- old/maeparser-1.2.4/MaeParserConfig.hpp     2020-10-13 19:18:02.000000000 
+0200
+++ new/maeparser-1.3.0/MaeParserConfig.hpp     2022-09-06 20:31:33.000000000 
+0200
@@ -2,26 +2,20 @@
 
 #ifndef STATIC_MAEPARSER
 
-#ifdef IN_MAEPARSER
-
 #ifdef WIN32
+#ifdef IN_MAEPARSER
 #define EXPORT_MAEPARSER __declspec(dllexport)
 #else
-#define EXPORT_MAEPARSER __attribute__((visibility("default")))
-#endif
-
-#else
-
-#ifdef WIN32
 #define EXPORT_MAEPARSER __declspec(dllimport)
+#endif // IN_MAEPARSER
+
 #else
-#define EXPORT_MAEPARSER
-#endif
 
-#endif
+#define EXPORT_MAEPARSER __attribute__((visibility("default")))
+#endif // WIN32
 
 #else
 
 #define EXPORT_MAEPARSER
 
-#endif
+#endif // STATIC_MAEPARSER
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/README.md 
new/maeparser-1.3.0/README.md
--- old/maeparser-1.2.4/README.md       2020-10-13 19:18:02.000000000 +0200
+++ new/maeparser-1.3.0/README.md       2022-09-06 20:31:33.000000000 +0200
@@ -67,3 +67,35 @@
 * Quantum Mechanics applications, such as Jaguar
 * Protein-Protein Docking applications
 * Many other backends used in both Life and Material Sciences
+
+Installation
+============
+
+Command line installation on a
+Unix-like operating system follows a typical configure, build, and test 
procedure.
+Configuration is via [CMake](https://cmake.org/).  Here is an
+example command sequence:
+
+```bash
+git clone g...@github.com:schrodinger/maeparser.git maeparser
+
+# Set up the build configuration
+cd maeparser
+mkdir build
+cd build
+export CC=gcc
+cmake --verbose ..
+
+# Build it
+make
+
+# Run the custom testing
+ctest
+```
+
+Defining CC ensures that the specified
+compiler is used in the build
+(in the example, it will be the first instance of `gcc` in one's
+PATH), 
+and the `--verbose` argumentenables viewing the gory details of compiling and
+linking that will be necessary for debugging or reporting issues if the build 
fails.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/azure-pipelines.yml 
new/maeparser-1.3.0/azure-pipelines.yml
--- old/maeparser-1.2.4/azure-pipelines.yml     2020-10-13 19:18:02.000000000 
+0200
+++ new/maeparser-1.3.0/azure-pipelines.yml     2022-09-06 20:31:33.000000000 
+0200
@@ -3,34 +3,34 @@
   - dev/*
 
 jobs:
-  - job: Ubuntu_16_04_x64
+  - job: Ubuntu_20_04_x64
     timeoutInMinutes: 90
     pool:
-      vmImage: ubuntu-16.04
+      vmImage: ubuntu-20.04
     variables:
-      compiler: gxx_linux-64=7.2.0
+      compiler: gxx_linux-64
       boost_version: 1.67.0
       number_of_cores: nproc
       python_name: python37
       shared_lib: ON
     steps:
       - template: .azure-pipelines/linux_build.yml
-  - job: Ubuntu_16_04_x64_static
+  - job: Ubuntu_20_04_x64_static
     timeoutInMinutes: 90
     pool:
-      vmImage: ubuntu-16.04
+      vmImage: ubuntu-20.04
     variables:
-      compiler: gxx_linux-64=7.2.0
+      compiler: gxx_linux-64
       boost_version: 1.67.0
       number_of_cores: nproc
       python_name: python37
       shared_lib: OFF
     steps:
       - template: .azure-pipelines/linux_build.yml
-  - job: macOS_10_14_x64
+  - job: macOS_10_15_x64
     timeoutInMinutes: 90
     pool:
-      vmImage: macos-10.14
+      vmImage: macos-10.15
     variables:
       compiler: clangxx_osx-64
       boost_version: 1.67.0
@@ -40,10 +40,10 @@
       shared_lib: ON
     steps:
       - template: .azure-pipelines/mac_build.yml
-  - job: macOS_10_14_x64_static
+  - job: macOS_10_15_x64_static
     timeoutInMinutes: 90
     pool:
-      vmImage: macos-10.14
+      vmImage: macos-10.15
     variables:
       compiler: clangxx_osx-64
       boost_version: 1.67.0
@@ -53,24 +53,24 @@
       shared_lib: OFF
     steps:
       - template: .azure-pipelines/mac_build.yml
-  - job: Windows_VS2017_x64
+  - job: Windows_VS2019_x64
     timeoutInMinutes: 90
     pool:
-      vmImage: vs2017-win2016
+      vmImage: windows-2019
     variables:
-      compiler: vs2017_win-64
+      compiler: vs2019_win-64
       boost_version: 1.67.0
       number_of_cores: "%NUMBER_OF_PROCESSORS%"
       python_name: python37
       shared_lib: ON
     steps:
       - template: .azure-pipelines/vs_build.yml
-  - job: Windows_VS2017_x64_static
+  - job: Windows_VS2019_x64_static
     timeoutInMinutes: 90
     pool:
-      vmImage: vs2017-win2016
+      vmImage: windows-2019
     variables:
-      compiler: vs2017_win-64
+      compiler: vs2019_win-64
       boost_version: 1.67.0
       number_of_cores: "%NUMBER_OF_PROCESSORS%"
       python_name: python37
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/package-lock.json 
new/maeparser-1.3.0/package-lock.json
--- old/maeparser-1.2.4/package-lock.json       1970-01-01 01:00:00.000000000 
+0100
+++ new/maeparser-1.3.0/package-lock.json       2022-09-06 20:31:33.000000000 
+0200
@@ -0,0 +1,11 @@
+{
+    "name": "maeparser",
+    "author": "schrodinger",
+    "repository": "github:schrodinger/maeparser",
+    "license": "MIT",
+    "version": "1.2.4",
+    "dependencies": {
+      "cmake": "Kitware/CMake#v3.5.0",
+      "boost": "boostorg/boost",
+    }
+  }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/test/MaeBlockTest.cpp 
new/maeparser-1.3.0/test/MaeBlockTest.cpp
--- old/maeparser-1.2.4/test/MaeBlockTest.cpp   2020-10-13 19:18:02.000000000 
+0200
+++ new/maeparser-1.3.0/test/MaeBlockTest.cpp   2022-09-06 20:31:33.000000000 
+0200
@@ -1,4 +1,5 @@
 #include <iostream>
+#include <memory>
 #include <stdexcept>
 
 #include <boost/test/unit_test.hpp>
@@ -133,8 +134,7 @@
         dv.push_back(3.0);
         IndexedBlock ib("m_atom");
         BOOST_REQUIRE(!ib.hasRealProperty("r_m_float"));
-        auto irps = std::shared_ptr<IndexedRealProperty>(
-            new IndexedRealProperty(dv, bs));
+        auto irps = std::make_shared<IndexedRealProperty>(dv, bs);
 
         ib.setRealProperty("r_m_float", irps);
         BOOST_REQUIRE(ib.hasRealProperty("r_m_float"));
@@ -169,8 +169,7 @@
         dv.push_back(true);
         IndexedBlock ib("m_atom");
         BOOST_REQUIRE(!ib.hasBoolProperty("b_m_bool"));
-        auto ibps = std::shared_ptr<IndexedBoolProperty>(
-            new IndexedBoolProperty(dv, bs));
+        auto ibps = std::make_shared<IndexedBoolProperty>(dv, bs);
 
         ib.setBoolProperty("b_m_bool", ibps);
         BOOST_REQUIRE(ib.hasBoolProperty("b_m_bool"));
@@ -199,8 +198,7 @@
         dv.push_back("Bye");
         IndexedBlock ib("m_atom");
         BOOST_REQUIRE(!ib.hasStringProperty("s_m_string"));
-        auto isps = std::shared_ptr<IndexedStringProperty>(
-            new IndexedStringProperty(dv, bs));
+        auto isps = std::make_shared<IndexedStringProperty>(dv, bs);
 
         ib.setStringProperty("s_m_string", isps);
         BOOST_REQUIRE(ib.hasStringProperty("s_m_string"));
@@ -234,8 +232,7 @@
     boost::dynamic_bitset<>* rbs = new boost::dynamic_bitset<>(3);
     rbs->set(2);
 
-    auto irps =
-        std::shared_ptr<IndexedRealProperty>(new IndexedRealProperty(rv, rbs));
+    auto irps = std::make_shared<IndexedRealProperty>(rv, rbs);
     ib->setRealProperty("r_m_reals", irps);
 
     return ib;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/test/ReaderTest.cpp 
new/maeparser-1.3.0/test/ReaderTest.cpp
--- old/maeparser-1.2.4/test/ReaderTest.cpp     2020-10-13 19:18:02.000000000 
+0200
+++ new/maeparser-1.3.0/test/ReaderTest.cpp     2022-09-06 20:31:33.000000000 
+0200
@@ -17,6 +17,9 @@
 const std::string uncompressed_sample =
     (test_samples_path / "test.mae").string();
 
+const std::string subblock_sample =
+    (test_samples_path / "subblock_sample.mae").string();
+
 BOOST_AUTO_TEST_SUITE(ReaderSuite)
 
 BOOST_AUTO_TEST_CASE(Reader0)
@@ -326,4 +329,54 @@
                           check_msg);
 }
 
+void write_block_names(const Block& block, int tabs, 
std::vector<std::pair<std::string, unsigned int>>& res) {
+   for (auto& subblock_name : block.getBlockNames()) {
+      res.push_back({subblock_name,tabs});
+      write_block_names(*block.getBlock(subblock_name), tabs + 1, res);
+   }
+   for (auto& indexed_subblock_name : block.getIndexedBlockNames()) {
+      res.push_back({indexed_subblock_name,tabs});
+   }
+}
+
+BOOST_AUTO_TEST_CASE(TestGetSubBlockNames)
+{
+    auto ss = std::make_shared<std::ifstream>(subblock_sample);
+    Reader r(ss);
+
+    std::shared_ptr<Block> b = r.next(CT_BLOCK);
+
+    /* This is the tree structure of the non atom or bond subblocks for this
+      CT block:
+
+      m_test_block
+        m_nested_block
+            m_test_nested_indexed_block
+        m_test_block
+        m_test_repeated_block
+        m_test_indexed_block
+    */
+
+   std::vector<std::pair<std::string, unsigned int>> expected_subblocks = {
+      {"m_test_block", 0},
+      {"m_nested_block", 1},
+      {"m_test_nested_indexed_block", 2},
+      {"m_test_block", 1},
+      {"m_test_repeated_block", 1},
+      {"m_test_indexed_block", 1},
+      {schrodinger::mae::ATOM_BLOCK, 0},
+      {schrodinger::mae::BOND_BLOCK, 0},
+   };
+   std::vector<std::pair<std::string, unsigned int>> actual_subblocks;
+   write_block_names(*b, 0, actual_subblocks);
+
+   BOOST_REQUIRE(actual_subblocks.size() == expected_subblocks.size());
+   for (unsigned int i = 0; i < actual_subblocks.size(); ++i) {
+      auto actual = actual_subblocks[i];
+      auto expected = expected_subblocks[i];
+      BOOST_CHECK_EQUAL(actual.first, expected.first);
+      BOOST_CHECK_EQUAL(actual.second, expected.second);
+   }
+}
+
 BOOST_AUTO_TEST_SUITE_END()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/test/WriterTest.cpp 
new/maeparser-1.3.0/test/WriterTest.cpp
--- old/maeparser-1.2.4/test/WriterTest.cpp     2020-10-13 19:18:02.000000000 
+0200
+++ new/maeparser-1.3.0/test/WriterTest.cpp     2022-09-06 20:31:33.000000000 
+0200
@@ -29,7 +29,7 @@
   public:
     WriterGlobalFixture()
     {
-        for (auto& file : generated_files) {
+        for (const auto& file : generated_files) {
             boost::filesystem::path fpath(file);
             if (boost::filesystem::exists(fpath)) {
                 boost::filesystem::remove(fpath);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/maeparser-1.2.4/test/subblock_sample.mae 
new/maeparser-1.3.0/test/subblock_sample.mae
--- old/maeparser-1.2.4/test/subblock_sample.mae        1970-01-01 
01:00:00.000000000 +0100
+++ new/maeparser-1.3.0/test/subblock_sample.mae        2022-09-06 
20:31:33.000000000 +0200
@@ -0,0 +1,95 @@
+{
+  s_m_m2io_version
+  :::
+  2.0.0
+}
+
+f_m_ct {
+  s_m_title
+  s_m_entry_id
+  s_m_entry_name
+  i_m_ct_format
+  :::
+  water
+   2
+   water.1
+   2
+  m_atom[3] {
+    # First column is atom index #
+    i_m_mmod_type
+    r_m_x_coord
+    r_m_y_coord
+    r_m_z_coord
+    i_m_residue_number
+    i_m_color
+    s_m_pdb_residue_name
+    s_m_grow_name
+    i_m_atomic_number
+    s_m_color_rgb
+    s_m_atom_name
+    i_m_minimize_atom_index
+    :::
+    1 16 -1.523268 2.566995 0.086033 1 70 "    " "  c1" 8 FF2F2F  O1  1
+    2 42 -2.329434 1.994698 -0.064311 1 21 "    " "  c2" 1 FFFFFF  H2  2
+    3 42 -0.697113 2.013954 -0.021723 1 21 "    " "  n2" 1 FFFFFF  H3  3
+    :::
+  }
+  m_bond[2] {
+    # First column is bond index #
+    i_m_from
+    i_m_to
+    i_m_order
+    i_m_from_rep
+    i_m_to_rep
+    :::
+    1 1 2 1 1 1
+    2 1 3 1 1 1
+    :::
+  }
+  m_test_block {
+    r_test_real
+    i_test_int
+    s_test_string
+    :::
+    0.5
+    1
+    hello
+    m_test_block {
+        i_test_i2
+        :::
+        11
+    }
+    m_test_indexed_block[2] {
+        i_test_ia
+        b_test_bb
+        :::
+        1 101 1
+        2 102 0
+        :::
+    }
+    m_test_repeated_block {
+        i_test_irep
+        :::
+        1001
+    }
+    m_test_repeated_block {
+        i_test_irep
+        :::
+        1002
+    }
+    m_nested_block {
+        i_test_none
+        :::
+        1003
+        m_test_nested_indexed_block[2] {
+            s_test_s1
+            r_test_r2
+            :::
+            1 abc 1.5
+            2 def 0.7
+            :::
+        }
+    }
+  }
+}
+

Reply via email to