languageTargeting.getValueList().forEach(suffixJoiner::add); } else if (!languageTargeting.getAlternativesList().isEmpty()) { suffixJoiner.add("other_lang");
protocolStringList.forEach(dependencyName -> { if (!descriptorProtoIndex.containsKey(dependencyName)) { throw new IllegalArgumentException("Can't find dependency: " + dependencyName);
private static UCFG deserializeUcfg(FileInputStream fis) throws IOException { String methodId = ""; try { Ucfg.UCFG ucfg = Ucfg.UCFG.parseFrom(fis); methodId = ucfg.getMethodId(); UCFGBuilder builder = UCFGBuilder.createUCFGForMethod(methodId).at(fromProtobuf(ucfg.getLocation())); ucfg.getParametersList().forEach(pId -> builder.addMethodParam(UCFGBuilder.variableWithId(pId))); Map<String, UCFGBuilder.BlockBuilder> blockById = ucfg.getBasicBlocksList().stream().collect(Collectors.toMap(Ucfg.BasicBlock::getId, UCFGtoProtobuf::fromProtobuf)); for (Map.Entry<String, UCFGBuilder.BlockBuilder> entry : blockById.entrySet()) { if (ucfg.getEntriesList().contains(entry.getKey())) { builder.addStartingBlock(entry.getValue()); } else { builder.addBasicBlock(entry.getValue()); } } return builder.build(); } catch (Exception e) { throw new IllegalStateException("An error occured while deserializing UCFG for method "+methodId, e); } }
@Procedure(value = "load.tensorflow", mode = Mode.WRITE) public Stream<LoadResult> loadTensorFlow(@Name("file") String url) throws IOException { GraphDef graphDef = GraphDef.parseFrom(new BufferedInputStream(new URL(url).openStream())); Map<String, Node> nodes = new HashMap<>(); // tod model node, layer nodes for (NodeDef nodeDef : graphDef.getNodeList()) { Node node = db.createNode(Types.Neuron); node.setProperty("name", nodeDef.getName()); if (nodeDef.getDevice() != null) node.setProperty("device", nodeDef.getDevice()); node.setProperty("op", nodeDef.getOp()); nodeDef.getAttrMap().forEach((k, v) -> { Object value = getValue(v); if (value != null) { node.setProperty(k, value); } }); nodes.put(nodeDef.getName(), node); } long rels = 0; for (NodeDef nodeDef : graphDef.getNodeList()) { Node target = nodes.get(nodeDef.getName()); nodeDef.getInputList().forEach(name -> nodes.get(name).createRelationshipTo(target, RelTypes.INPUT)); // todo weights rels += nodeDef.getInputCount(); } return Stream.of(new LoadResult(url,"tensorflow",nodes.size(), rels)); }
.build()); Log.info("Input: " + sentenceExtractionInput); sentenceExtractionResponse.getSentencesList().forEach(Log::info);
protected void addPropertyToElement(Element tinkerElement, String propertyName, Cpg.PropertyValue propertyValue) { Cpg.PropertyValue.ValueCase valueCase = propertyValue.getValueCase(); switch(valueCase) { case INT_VALUE: tinkerElement.property(propertyName, propertyValue.getIntValue()); break; case STRING_VALUE: tinkerElement.property(propertyName, propertyValue.getStringValue()); break; case BOOL_VALUE: tinkerElement.property(propertyName, propertyValue.getBoolValue()); break; case STRING_LIST: if (tinkerElement instanceof Vertex) { propertyValue.getStringList().getValuesList().forEach(value -> ((Vertex) tinkerElement).property(VertexProperty.Cardinality.list, propertyName, value)); } else { List<String> propertyList = new LinkedList<>(); propertyList.addAll(propertyValue.getStringList().getValuesList()); tinkerElement.property(propertyName, propertyList); } break; case VALUE_NOT_SET: break; default: throw new RuntimeException("Error: unsupported property case: " + valueCase.name()); } }