summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2017-08-15 18:43:56 +0200
committerNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2017-08-15 18:43:56 +0200
commitbe92d1955a45b81e3d7f4af26497c3d73aa46ceb (patch)
tree1aa263fc71d62f85d59e6bdc142b97bf4bb47e6d /ast-to-instr/src/Expressions.java
parentb45d145f19c7818db7a890117b089ebf3f891947 (diff)
Partial attr. support, build/run targets, literals
Diffstat (limited to 'ast-to-instr/src/Expressions.java')
-rw-r--r--ast-to-instr/src/Expressions.java63
1 files changed, 49 insertions, 14 deletions
diff --git a/ast-to-instr/src/Expressions.java b/ast-to-instr/src/Expressions.java
index 90b0fff..c6037d6 100644
--- a/ast-to-instr/src/Expressions.java
+++ b/ast-to-instr/src/Expressions.java
@@ -372,22 +372,57 @@ public class Expressions
/*
grep "Kind.*Literal" ./src/vhdl/nodes_meta.adb | sort | uniq -u
points to:
- "character_literal";
- "enumeration_literal";
- "floating_point_literal";
- "integer_literal";
- "null_literal";
- "overflow_literal";
- "physical_fp_literal";
- "physical_int_literal";
- "physical_literal"; (unsure if it can happen)
- "string_literal8";
-
- They don't all use the same structure, so we're going to handle them
- latter.
+ "character_literal";
+ "enumeration_literal";
+ "floating_point_literal";
+ "integer_literal";
+ "null_literal";
+ "overflow_literal";
+ "physical_fp_literal";
+ "physical_int_literal";
+ "physical_literal"; (unsure if it can happen)
+ "string_literal8";
+
+ They don't all use the same structure, so we're going to handle them
+ later.
+ TODO
*/
- structure.append("l");
+ structure.append("?");
+ elements.add
+ (
+ Strings.get_id_from_string
+ (
+ "l"
+ )
+ );
+
+ }
+ else if (kind.contains("attribute"))
+ {
+ structure.append("(?");
+
+ elements.add
+ (
+ Strings.get_id_from_string
+ (
+ /* FIXME: Kind of a hacky */
+ kind.replace("_attribute", "")
+ )
+ );
+
+ process
+ (
+ elements,
+ structure,
+ (Node) XPE_GET_PREFIX.evaluate
+ (
+ current_node,
+ XPathConstants.NODE
+ )
+ );
+
+ structure.append(")");
}
}
}