summaryrefslogtreecommitdiffstats
path: root/tools/slang-cpp-extractor/macro-writer.cpp
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2022-03-15 10:45:24 -0400
committerGitHub <noreply@github.com>2022-03-15 10:45:24 -0400
commit8533dd2344d8be040a992a86f23e7cf696d59c4a (patch)
tree9121a5a5fa98eb4f5101421341142616ac703ba8 /tools/slang-cpp-extractor/macro-writer.cpp
parent06d04ab5e63ad43d7ad9de3fbc4c8ed64b13265a (diff)
C++ extractor callable support (#2159)
* #include an absolute path didn't work - because paths were taken to always be relative. * Split doc extractor such that can be used in C++ extractor. * Compiles. Update the stdlib docs. * Fix issue on release builds. * Add support for extracting documentation to C++ extractor. * Dump out markup. Make enum value backing type take tokens. * Node::Type -> Node::Kind * More improvements around Node::Type -> Node::Kind * Support for parsing callable types. * Fix issue params for callable, and default value for variable. * Add support for static. * Improve handling parsing of contained types. * Small improvements around template consumption. * Improve dumping with markup/static. * Small improvements around reflection. * Add more flexible handling of markers. Allow reflection without markers.
Diffstat (limited to 'tools/slang-cpp-extractor/macro-writer.cpp')
-rw-r--r--tools/slang-cpp-extractor/macro-writer.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/tools/slang-cpp-extractor/macro-writer.cpp b/tools/slang-cpp-extractor/macro-writer.cpp
index c4245a646..0f217cd4e 100644
--- a/tools/slang-cpp-extractor/macro-writer.cpp
+++ b/tools/slang-cpp-extractor/macro-writer.cpp
@@ -120,13 +120,16 @@ SlangResult MacroWriter::calcChildrenHeader(NodeTree* tree, TypeSet* typeSet, St
// Define the derived types
out << "#define " << m_options->m_markPrefix << "FIELDS_" << reflectTypeName << "_" << classNode->m_name.getContent() << "(_x_, _param_)";
- // Find all of the fields
+ // Find all of the instance fields fields
List<FieldNode*> fields;
for (Node* child : classNode->m_children)
{
if (auto field = as<FieldNode>(child))
{
- fields.add(field);
+ if (!field->m_isStatic)
+ {
+ fields.add(field);
+ }
}
}