AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / coding / 问题

All perguntas(coding)

Martin Hope
Nadisty
Asked: 2025-04-23 01:14:24 +0800 CST

Catia Macro: vincular Comprimento de Pontos com parâmetro

  • 5

Tenho uma macro que pode criar 4 pontos. O comprimento de cada ponto está vinculado a um parâmetro já definido. Mas, apenas para criar o ponto pela primeira vez, gostaria de ter um link completo. Por exemplo, se o parâmetro tiver alguma atualização de valor, o comprimento de cada ponto deve ser atualizado de acordo. Obrigado.

insira a descrição da imagem aqui

mais detalhes: se eu clicar duas vezes no ponto criado por meio deste código, preciso ver Comprimento = valor = CATIA_V5R22_VENT-HOLES-DEFINITION-BACKREST_V01\HOLES_PARAMETERS\HOLE_RADIUS

não assim Comprimento = valor

    Private Function GetParameterValue(part As Object, categoryName As String, parameterName As String) As Double
    Dim parameters As Object
    Dim parameter As Object
    Set parameters = part.parameters
    On Error Resume Next
    Set parameter = parameters.Item(categoryName & "\" & parameterName)
    If Not parameter Is Nothing Then
        GetParameterValue = parameter.value
    Else
        GetParameterValue = 0  ' Default value if the parameter doesn't exist
    End If
    On Error GoTo 0
End Function


Sub points(hybridBody As Object)
    Dim partDocument As Object
    Set partDocument = CATIA.Documents.Item("CATIA_V5R22_VENT-HOLES-DEFINITION-BACKREST_V01.CATPart")
    Dim part1 As Object
    Set part1 = partDocument.part
    
    ' Retrieve the value of the hole radius
    Dim holeRadius As Double
    holeRadius = GetParameterValue(part1, "HOLES_PARAMETERS", "HOLE_RADIUS")
    
    Dim hybridShapes1 As Object
    Set hybridShapes1 = hybridBody.hybridShapes
    Dim hybridShapeLinePtDir1 As Object
    Set hybridShapeLinePtDir1 = hybridShapes1.Item("Horiz. Axis")
    
    Dim reference1 As Object
    Set reference1 = part1.CreateReferenceFromObject(hybridShapeLinePtDir1)
    
    Dim hybridShapeIntersection1 As Object
    Set hybridShapeIntersection1 = hybridShapes1.Item("Inter. Right")
    Dim reference2 As Object
    Set reference2 = part1.CreateReferenceFromObject(hybridShapeIntersection1)
    
    Dim hybridShapeFactory1 As Object
    Set hybridShapeFactory1 = part1.hybridShapeFactory
    Dim hybridShapePointOnCurve1 As Object
    Set hybridShapePointOnCurve1 = hybridShapeFactory1.AddNewPointOnCurveWithReferenceFromDistance(reference1, reference2, holeRadius, True)
    hybridShapePointOnCurve1.distanceType = 1
    hybridShapePointOnCurve1.Name = "Point.1"
    hybridBody.AppendHybridShape hybridShapePointOnCurve1
    part1.InWorkObject = hybridShapePointOnCurve1
    part1.Update

    part1.Update
End Sub
vba
  • 1 respostas
  • 50 Views
Martin Hope
JackLThornton
Asked: 2025-04-23 00:42:09 +0800 CST

Como perguntar ao git o nome real do branch atual [duplicado]

  • 0
Esta pergunta já tem respostas aqui :
Como obtenho o nome do branch atual no Git? (55 respostas)
Fechado há 12 horas .

Escrevi um utilitário que coleta "métricas" antes e depois (resultados da execução de testes de backend e frontend) e armazeno os resultados em uma subpasta com o nome da ramificação na qual os testes foram executados (essa subpasta existe em uma pasta específica definida pelo usuário e não na pasta "projeto" — fica a critério do usuário decidir quando limpar as subpastas antigas). Tudo o que o utilitário faz é relativo ao Diretório de Trabalho Atual, que se presume ser a pasta raiz ou "projeto" na qual o repositório git que está sendo testado está armazenado localmente.

O utilitário solicita ao git o nome da ramificação atual no CWD. Eu uso "git name-rev --name-only HEAD" para obter esse nome. Desde que eu tenha feito commit de algo pelo menos uma vez nessa ramificação, funciona perfeitamente. No entanto, o caso de uso é que você executará o utilitário ao cortar uma nova ramificação e, em seguida, executá-lo-á novamente quando estiver pronto para uma solicitação de mesclagem; as métricas de antes e depois são então copiadas para o modelo MR que usamos. No entanto, quando uma ramificação é cortada pela primeira vez, o comando acima retorna o nome da ramificação da qual cortei, não o nome real da nova ramificação. Além de executar "git status" e analisar a saída, existe alguma maneira de obter o nome correto da ramificação de forma confiável com algum outro comando git?

git
  • 1 respostas
  • 51 Views
Martin Hope
Enrico Gobbo
Asked: 2025-04-23 00:03:02 +0800 CST

Função LAG aninhada (tipo isso)

  • 7

Eu tenho essa mesa

Código de Máquina DoCreation CódigoDeEstadoDaMáquina
DM139 2024-04-03 00:32:17.377 99
DM139 2024-04-03 00:32:49.080 0
DM139 2024-04-03 01:51:14.427 99
DM139 2024-04-03 01:51:45.643 0
DM139 2024-04-03 06:07:38.357 3
DM139 2024-04-03 06:07:39.043 0
DM139 2024-04-03 06:23:37.433 100
DM139 2024-04-03 06:23:43.697 0
DM139 2024-04-03 06:24:46.153 1
DM139 2024-04-03 06:25:02.467 0
DM139 2024-04-03 06:46:50.410 100
DM139 2024-04-03 06:47:29.247 0
DM139 2024-04-03 06:47:46.397 100
DM139 2024-04-03 06:53:47.160 0
DM139 2024-04-03 06:59:41.633 1
DM139 2024-04-03 06:59:54.550 0
DM139 2024-04-03 07:00:03.203 1
DM139 2024-04-03 07:00:06.437 0
DM139 2024-04-03 07:00:14.247 1
DM139 2024-04-03 07:00:17.683 2
DM139 2024-04-03 07:00:18.153 1
DM139 2024-04-03 07:00:18.840 2
DM139 2024-04-03 07:00:26.860 1
DM139 2024-04-03 07:00:46.387 2

cada registro representa uma "mudança de estado" da máquina específica DM139 onde

  • MachineCode = código da máquina (nvarchar)
  • DoCreation = registro de data e hora de quando a máquina mudou seu estado (data e hora)
  • MachineStateCode = novo estado da máquina, onde 99 = reinicializando, 0 = inicializando, 3 = erro, 1 = iniciando, 2 = funcionando e assim por diante (int)

Preciso criar uma nova coluna, vamos chamá-la de MachineStateCodeAdjusted, onde seu valor é igual a 3 se o MachineStateCode anterior for 3 e o MachineStateCode atual não for 2, caso contrário, deve ter o valor atual do MachineStateCode. (a próxima tabela é o que preciso)

Código de Máquina DoCreation CódigoDeEstadoDaMáquina MachineStateCodeAjustado
DM139 2024-04-03 00:32:17.377 99 99
DM139 2024-04-03 00:32:49.080 0 0
DM139 2024-04-03 01:51:14.427 99 99
DM139 2024-04-03 01:51:45.643 0 0
DM139 2024-04-03 06:07:38.357 3 3
DM139 2024-04-03 06:07:39.043 0 3
DM139 2024-04-03 06:23:37.433 100 3
DM139 2024-04-03 06:23:43.697 0 3
DM139 2024-04-03 06:24:46.153 1 3
DM139 2024-04-03 06:25:02.467 0 3
DM139 2024-04-03 06:46:50.410 100 3
DM139 2024-04-03 06:47:29.247 0 3
DM139 2024-04-03 06:47:46.397 100 3
DM139 2024-04-03 06:53:47.160 0 3
DM139 2024-04-03 06:59:41.633 1 3
DM139 2024-04-03 06:59:54.550 0 3
DM139 2024-04-03 07:00:03.203 1 3
DM139 2024-04-03 07:00:06.437 0 3
DM139 2024-04-03 07:00:14.247 1 3
DM139 2024-04-03 07:00:17.683 2 2
DM139 2024-04-03 07:00:18.153 1 1
DM139 2024-04-03 07:00:18.840 2 2
DM139 2024-04-03 07:00:26.860 1 1
DM139 2024-04-03 07:00:46.387 2 2

Usei a função LAG para obter o MachineStateCode anterior (e funciona), mas para funcionar como eu quero, preciso obter o MachineStateCodeAdjusted anterior, que não é acessível para a função LAG.

A consulta SQL que estou executando é esta:

   SELECT MachineCode
       , DoCreation
   , MachineStateCode
   , IIF(LAG(MachineStateCode, 1, MachineStateCode) OVER (ORDER BY DoCreation ASC) = 3 
  AND MachineStateCode<>2, 3, MachineStateCode)  AS MachineStateCodeAdjusted       
  FROM mch.MachineStateChanges

e o resultado que obtive me mostra claramente que não funciona como eu quero

Código de Máquina DoCreation CódigoDeEstadoDaMáquina MachineStateCodeAjustado
DM139 2024-04-03 00:32:17.377 99 99
DM139 2024-04-03 00:32:49.080 0 0
DM139 2024-04-03 01:51:14.427 99 99
DM139 2024-04-03 01:51:45.643 0 0
DM139 2024-04-03 06:07:38.357 3 3
DM139 2024-04-03 06:07:39.043 0 3
DM139 2024-04-03 06:23:37.433 100 100 ERRADOS
DM139 2024-04-03 06:23:43.697 0 0 ERRADO
DM139 2024-04-03 06:24:46.153 1 1 ERRADO

Também tentei com um CTE recursivo e funciona, mas é muito lento! A extração da consulta leva 4 minutos e 2 dias de trabalho, enquanto eu preciso extrair 1 ano!

Qual é a melhor (e rápida) abordagem para consertar isso?

sql
  • 3 respostas
  • 85 Views
Martin Hope
Caleb Stanford
Asked: 2025-04-22 23:47:19 +0800 CST

Introdução de quantificadores em Dafny: prove que abs é sobrejetivo

  • 7

Esta é uma pergunta semelhante, mas não consegui mapeá-la para o meu caso de uso. Basicamente, quero usar Dafny para provar uma afirmação básica com quantificadores aninhados (para todo X existe Y) em lógica de primeira ordem sobre inteiros. A afirmação específica que escolhi é que a absfunção é sobrejetiva em inteiros não negativos. Aqui está um trecho de código minimizado:

function abs(x: int): int {
    if x > 0 then x else -x
}

// Passes the verifier
lemma AbsSurjectiveFor(y: int)
requires y >= 0
ensures exists x :: abs(x) == y
{
    assert abs(y) == y;
}

// Error in this lemma (universal generalization of the above)
lemma AbsSurjective()
ensures forall y: int :: y >= 0 ==> exists x :: abs(x) == y
{
    // Forall introduction syntax
    forall y: int | y >= 0
    ensures exists x :: abs(x) == y
    {
        AbsSurjectiveFor(y);
    }
}

Pergunta

Qual é a sintaxe correta para que o segundo lema seja aprovado?

De forma mais geral, estou procurando a sintaxe para as regras de introdução e eliminação para todos, caso eu queira fazer uma demonstração manualmente (por exemplo, em um estilo de dedução natural). Suspeito que estou fazendo algo muito "óbvio" errado, mas não consegui encontrar a sintaxe correta no manual de referência.

Notas

Dafny prova o primeiro lema (fácil, não é necessária a introdução de um quantificador), mas falha no segundo lema, embora eu tenha correspondido exatamente à sintaxe dada na resposta de Rustan , que sugere usar um bloco de instruções forall dentro do lema.

Uma dica do que pode estar errado é que estou recebendo avisos por usar quantificadores sem gatilhos. No entanto, não me importo muito com os gatilhos, pois minha intenção é provar as instruções forall/exists manualmente. Não tenho certeza se existe uma maneira de simplesmente desativar os gatilhos ou dizer ao Dafny para não instanciar os quantificadores, a menos que eu diga para ele fazer isso.

Saída de dafny verify:

$ dafny verify fol-minimal.dfy 
fol-minimal.dfy(15,8): Warning: Could not find a trigger for this quantifier. Without a trigger, the quantifier may cause brittle verification. To silence this warning, add an explicit trigger using the {:trigger} attribute. For more information, see the section quantifier instantiation rules in the reference manual.
   |
15 | ensures forall y: int :: y >= 0 ==> exists x :: abs(x) == y
   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

fol-minimal.dfy(18,4): Warning: Could not find a trigger for this quantifier. Without a trigger, the quantifier may cause brittle verification. To silence this warning, add an explicit trigger using the {:trigger} attribute. For more information, see the section quantifier instantiation rules in the reference manual.
   |
18 |     forall y: int | y >= 0
   |     ^^^^^^^^^^^^^^^^^^^^^^

fol-minimal.dfy(16,0): Error: a postcondition could not be proved on this return path
   |
16 | {
   | ^

fol-minimal.dfy(15,8): Related location: this is the postcondition that could not be proved
   |
15 | ensures forall y: int :: y >= 0 ==> exists x :: abs(x) == y
   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
dafny
  • 1 respostas
  • 26 Views
Martin Hope
David M. Sousa
Asked: 2025-04-22 23:44:57 +0800 CST

For-loop com o operador walrus dentro do intervalo

  • 1

Por que os valores negativos kestão sendo impressos como o valor original, mas quando entramos no reino positivo, fica estranho?

Em:

def j(k):
    for i in range(i:=k):
        i+=i
    print(i)
for i in [-5,-4,-3,-2,-1,0,1,2,3,4,5]:
    j(i)

Fora:

-5
-4
-3
-2
-1
0
0
2
4
6
8
python
  • 1 respostas
  • 61 Views
Martin Hope
Aleksandra
Asked: 2025-04-22 22:49:53 +0800 CST

Problemas de compilação de migração Taiga UI v3> v4

  • 6

Fiz a migração do Taiga UI v3 para o v4, adicionei alguns pacotes (com o Yarn), atualizei o código de acordo, resolvi todos os outros erros depois de executar o projeto (Angular), mas ainda há este erro que não entendo:

...
Build at: 2025-04-22T14:47:34.441Z - Hash: fe6fe04f860facf1 - Time: 2234ms

./node_modules/@taiga-ui/kit/fesm2022/taiga-ui-kit-components-input-number.mjs:209:37-68 - Error: export 'maskitoInitialCalibrationPlugin' (imported as 'maskitoInitialCalibrationPlugin') was not found in '@maskito/core' (possible exports: MASKITO_DEFAULT_ELEMENT_PREDICATE, MASKITO_DEFAULT_OPTIONS, Maskito, maskitoPipe, maskitoTransform)

./node_modules/@taiga-ui/kit/fesm2022/taiga-ui-kit-components-input-phone-international.mjs:245:122-153 - Error: export 'maskitoInitialCalibrationPlugin' (imported as 'maskitoInitialCalibrationPlugin') was not found in '@maskito/core' (possible exports: MASKITO_DEFAULT_ELEMENT_PREDICATE, MASKITO_DEFAULT_OPTIONS, Maskito, maskitoPipe, maskitoTransform)

./node_modules/@taiga-ui/legacy/fesm2022/taiga-ui-legacy-components-input-date-time.mjs:372:34-63 - Error: export 'maskitoSelectionChangeHandler' (imported as 'maskitoSelectionChangeHandler') was not found in '@maskito/kit' (possible exports: maskitoAddOnFocusPlugin, maskitoCaretGuard, maskitoDateOptionsGenerator, maskitoDateRangeOptionsGenerator, maskitoDateTimeOptionsGenerator, maskitoEventHandler, maskitoNumberOptionsGenerator, maskitoParseNumber, maskitoPostfixPostprocessorGenerator, maskitoPrefixPostprocessorGenerator, maskitoRejectEvent, maskitoRemoveOnBlurPlugin, maskitoTimeOptionsGenerator, maskitoWithPlaceholder)

./node_modules/@taiga-ui/legacy/fesm2022/taiga-ui-legacy-components-input-number.mjs:314:37-68 - Error: export 'maskitoInitialCalibrationPlugin' (imported as 'maskitoInitialCalibrationPlugin') was not found in '@maskito/core' (possible exports: MASKITO_DEFAULT_ELEMENT_PREDICATE, MASKITO_DEFAULT_OPTIONS, Maskito, maskitoPipe, maskitoTransform)

./node_modules/@taiga-ui/legacy/fesm2022/taiga-ui-legacy-components-input-time.mjs:413:34-63 - Error: export 'maskitoSelectionChangeHandler' (imported as 'maskitoSelectionChangeHandler') was not found in '@maskito/kit' (possible exports: maskitoAddOnFocusPlugin, maskitoCaretGuard, maskitoDateOptionsGenerator, maskitoDateRangeOptionsGenerator, maskitoDateTimeOptionsGenerator, maskitoEventHandler, maskitoNumberOptionsGenerator, maskitoParseNumber, maskitoPostfixPostprocessorGenerator, maskitoPrefixPostprocessorGenerator, maskitoRejectEvent, maskitoRemoveOnBlurPlugin, maskitoTimeOptionsGenerator, maskitoWithPlaceholder)


✖ Failed to compile.

Alguns pacotes estavam faltando em node_modules, então adicionei cada um manualmente, e agora esses são os únicos erros restantes. O que posso fazer com isso?

Veja como as dependências do package.json estão agora:

"dependencies": {
    "@angular-builders/custom-webpack": "18.0.0",
    "@angular/animations": "18.2.9",
    "@angular/cdk": "18.2.9",
    "@angular/common": "18.2.9",
    "@angular/compiler": "18.2.9",
    "@angular/core": "18.2.9",
    "@angular/forms": "18.2.9",
    "@angular/platform-browser": "18.2.9",
    "@angular/platform-browser-dynamic": "18.2.9",
    "@angular/router": "18.2.9",
    "@auth0/auth0-angular": "2.2.3",
    "@aws-sdk/client-s3": "3.627.0",
    "@aws-sdk/lib-storage": "3.627.0",
    "@aws-sdk/s3-request-presigner": "3.627.0",
    "@bigchaindb/wallet-hd": "0.4.3",
    "@bigchaindb/wallet-plugins": "0.4.5",
    "@jenniferplusplus/opentelemetry-instrumentation-bullmq": "0.5.0",
    "@maskito/angular": "1.9.0",
    "@maskito/core": "1.9.0",
    "@maskito/kit": "1.9.0",
    "@maskito/phone": "3.7.1",
    "@nestjs/axios": "3.1.3",
    "@nestjs/bullmq": "10.2.3",
    "@nestjs/cache-manager": "2.3.0",
    "@nestjs/common": "10.4.15",
    "@nestjs/config": "3.3.0",
    "@nestjs/core": "10.4.15",
    "@nestjs/event-emitter": "2.1.1",
    "@nestjs/microservices": "10.4.15",
    "@nestjs/passport": "10.0.3",
    "@nestjs/platform-express": "10.4.15",
    "@nestjs/schedule": "3.0.3",
    "@nestjs/swagger": "7.2.0",
    "@nestjs/terminus": "10.2.3",
    "@nestjs/throttler": "4.2.1",
    "@nestjs/typeorm": "10.0.2",
    "@ng-web-apis/common": "4.12.0",
    "@ng-web-apis/intersection-observer": "4.12.0",
    "@ng-web-apis/mutation-observer": "4.12.0",
    "@ng-web-apis/platform": "4.12.0",
    "@ng-web-apis/resize-observer": "4.12.0",
    "@ng-web-apis/screen-orientation": "4.12.0",
    "@ngneat/tailwind": "7.0.3",
    "@ngneat/transloco": "4.3.0",
    "@ngneat/transloco-keys-manager": "3.8.0",
    "@ngneat/transloco-locale": "4.1.0",
    "@ngneat/transloco-persist-lang": "4.0.0",
    "@ngneat/transloco-validator": "3.0.1",
    "@opentelemetry/api": "1.7.0",
    "@opentelemetry/exporter-trace-otlp-grpc": "0.47.0",
    "@opentelemetry/instrumentation-amqplib": "0.33.5",
    "@opentelemetry/instrumentation-aws-sdk": "0.37.2",
    "@opentelemetry/instrumentation-dns": "0.32.5",
    "@opentelemetry/instrumentation-express": "0.34.1",
    "@opentelemetry/instrumentation-generic-pool": "0.32.5",
    "@opentelemetry/instrumentation-http": "0.47.0",
    "@opentelemetry/instrumentation-ioredis": "0.36.1",
    "@opentelemetry/instrumentation-nestjs-core": "0.33.4",
    "@opentelemetry/instrumentation-net": "0.32.5",
    "@opentelemetry/instrumentation-pg": "0.37.2",
    "@opentelemetry/instrumentation-pino": "0.34.5",
    "@opentelemetry/resources": "1.20.0",
    "@opentelemetry/sdk-node": "0.47.0",
    "@opentelemetry/sdk-trace-base": "1.20.0",
    "@opentelemetry/semantic-conventions": "1.20.0",
    "@rx-angular/cdk": "16.0.0",
    "@rx-angular/state": "16.0.0",
    "@rx-angular/template": "16.0.1",
    "@s1seven/cluster-service": "0.15.5",
    "@s1seven/custom-schema-tools-certificate-summary": "0.2.0",
    "@s1seven/custom-schema-tools-extract-emails": "0.1.1",
    "@s1seven/custom-schema-tools-generate-tkr-pdf-template": "0.2.0",
    "@s1seven/custom-schema-tools-types": "0.1.1",
    "@s1seven/nestjs-tools-access-control": "0.1.15",
    "@s1seven/nestjs-tools-amqp-transport": "0.5.1",
    "@s1seven/nestjs-tools-async-local-storage": "0.2.2",
    "@s1seven/nestjs-tools-file-storage": "0.8.0",
    "@s1seven/nestjs-tools-lock": "0.7.0",
    "@s1seven/pino-heroku-pipeline": "0.1.1",
    "@s1seven/schema-tools-validate": "0.3.16",
    "@sendgrid/eventwebhook": "8.0.0",
    "@sendgrid/mail": "8.1.4",
    "@sentry/angular": "7.118.0",
    "@sentry/integrations": "7.118.0",
    "@sentry/node": "7.118.0",
    "@sentry/opentelemetry": "7.118.0",
    "@sentry/profiling-node": "7.118.0",
    "@sentry/types": "7.118.0",
    "@splitbee/web": "0.3.0",
    "@taiga-ui/cdk": "4.32.0",
    "@taiga-ui/core": "4.32.0",
    "@taiga-ui/event-plugins": "4.5.1",
    "@taiga-ui/i18n": "4.32.0",
    "@taiga-ui/icons": "4.32.0",
    "@taiga-ui/kit": "4.32.0",
    "@taiga-ui/layout": "4.32.0",
    "@taiga-ui/legacy": "4.32.0",
    "@taiga-ui/polymorpheus": "4.9.0",
    "@taiga-ui/styles": "4.32.0",
    "@tinkoff/ng-dompurify": "4.0.0",
    "@tinkoff/ng-polymorpheus": "4.3.0",
    "ajv": "8.16.0",
    "ajv-formats": "3.0.1",
    "amqp-connection-manager": "4.1.14",
    "amqplib": "0.10.3",
    "auth0": "4.13.0",
    "axios": "1.7.9",
    "axios-retry": "4.5.0",
    "bigchaindb-driver": "4.3.0",
    "body-parser": "1.20.2",
    "bs58": "5.0.0",
    "bullmq": "4.8.0",
    "cache-manager": "5.3.2",
    "cache-manager-ioredis-yet": "1.2.2",
    "chalk": "4.1.2",
    "class-transformer": "0.5.1",
    "class-validator": "0.14.1",
    "cookie-parser": "1.4.7",
    "country-code-lookup": "0.1.1",
    "date-fns": "2.30.0",
    "dotenv": "16.3.2",
    "dotenv-expand": "10.0.0",
    "express": "4.19.2",
    "express-rate-limit": "7.4.1",
    "handlebars": "4.7.8",
    "helmet": "8.0.0",
    "hyperid": "3.1.1",
    "ioredis": "5.3.2",
    "json-stable-stringify": "1.1.1",
    "jwks-rsa": "3.1.0",
    "lato-font": "3.0.0",
    "lodash": "4.17.21",
    "lodash.clonedeepwith": "4.5.0",
    "loopbench": "2.0.0",
    "lru-cache": "10.1.0",
    "mime": "3.0.0",
    "minimatch": "9.0.3",
    "mqtt": "5.3.6",
    "nestjs-asyncapi": "1.2.1",
    "nestjs-pino": "4.0.0",
    "nestjs-throttler-storage-redis": "0.4.1",
    "nestjs-typeorm-paginate": "4.0.4",
    "node-cache": "5.1.2",
    "otpauth": "9.2.2",
    "papaparse": "5.4.1",
    "passport": "0.7.0",
    "passport-jwt": "4.0.1",
    "pg": "8.11.3",
    "pg-query-stream": "4.5.3",
    "pino": "8.17.2",
    "pino-datadog-transport": "1.3.2",
    "pino-http": "9.0.0",
    "pino-pretty": "10.3.1",
    "qrcode": "1.5.3",
    "query-string": "7.1.3",
    "reflect-metadata": "0.2.1",
    "rxjs": "7.8.1",
    "semver": "7.5.4",
    "semver-lite": "0.0.6",
    "swagger-ui-express": "5.0.0",
    "tar": "6.2.1",
    "ts-mixer": "6.0.4",
    "tslib": "2.6.2",
    "tweetnacl-util": "0.15.1",
    "typeorm": "0.3.19",
    "typeorm-encrypted": "0.8.0",
    "zone.js": "0.14.10"
  },
angular
  • 1 respostas
  • 34 Views
Martin Hope
Maarten ten Velden
Asked: 2025-04-22 22:43:41 +0800 CST

Preservando aspas no arquivo Batch %*

  • 8

Quero encaminhar %*para um script do PowerShell a partir de um script em lote, que já funciona mais ou menos. O único problema é que não consigo encaminhar argumentos com espaços corretamente.

Exemplo.bat..

@echo off

set cwd=%~dp0
set argv=%*
powershell -NoProfile -ExecutionPolicy Bypass -Command "& '%cwd%Example.ps1' %argv%"

Exemplo.ps1..

Param(
  $Message
)
If (!$Message)
{
  $Message = "Hello!!!"
}
Write-Host $Message

Eu consigo fazer isso ./Example.bat Ohmuito bem, o que imprime Oh. No entanto, ./Example.bat "Oh no"só imprime Ohtambém. ./Example "'Oh no'"funciona, mas não é limpo, pois o uso dos scripts não é mais idêntico, o que significa que qualquer uso dele se torna fortemente acoplado, o que eu não quero.

powershell
  • 4 respostas
  • 109 Views
Martin Hope
user30224617
Asked: 2025-04-22 22:06:45 +0800 CST

Por que o tipo Unit é tratado de maneira especial em Kotlin?

  • 12

Por favor, explique esse comportamento em Kotlin:

data class A<T>(val p: T)
class B

fun f1(): A<Number> = A(B()) as A<Number>
fun f2(): A<Unit> = A(B()) as A<Unit>

fun main() {
    println("f1: ${f1().p::class.simpleName}") // print "f1: B"
    println("f2: ${f2().p::class.simpleName}") // print "f2: Unit"
}

Eu esperaria a saída "B" tanto no primeiro quanto no segundo caso.

Além disso, curiosamente, ele funciona corretamente para data class A<T>(val p: T?).

É algum tipo de otimização do compilador?

kotlin
  • 1 respostas
  • 165 Views
Martin Hope
n0dus
Asked: 2025-04-22 21:52:45 +0800 CST

Diferença de sintaxe std::thread no g++ 13 (Linux) vs. g++ 14 (Windows)

  • 14

Observei um comportamento interessante do g++ nas versões 13 e 14. O código a seguir funciona bem no g++14 (MSYS2, MinGW, Windows):

#include <iostream>
#include <thread>

class A
{
public:
    void f()
    {
        std::cout<<"Okay!\n";
    }
};

int main(int argc,char **argv)
{
    A a;
    std::thread t(A::f,&a);
    t.join();
    return 0;
}

Tentar compilar com g++13 (Linux), no entanto, produz:

error: invalid use of non-static member function 'void A::f()'

Mudando apenas

std::thread t(A::f,&a);

para

std::thread t(&A::f,&a);

resolve o problema. Aparentemente, na variante não-MSYS2, uma função membro não poderia ser usada no lugar de um argumento de função, mas um ponteiro para uma função membro poderia?

Isto foi testado no g++14 com MSYS2 (Windows 10). Aparentemente, outras versões do g++14 não funcionam.

$ g++ --version
g++.exe (Rev2, Built by MSYS2 project) 14.2.0
c++
  • 1 respostas
  • 537 Views
Martin Hope
mdailey77
Asked: 2025-04-22 21:24:05 +0800 CST

Obtendo "Falha de compilação... App.java:[1,22] <identificador> esperado" no projeto de início rápido do Maven

  • 5

Criei um projeto de início rápido do Maven usando as instruções "Maven: Primeiros Passos" . Este é o comando que executei para criar o projeto: mvn archetype:generate -DgroupId=org.development.package -DartifactId=maven_package_example -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.0 -DinteractiveMode=false. Coloquei sublinhados no nome do pacote, como sugerido por esta outra publicação do StackOverflow . Executei mvn compilee recebi um erro de falha de compilação:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:compile (default-compile) on project maven_package_example: Compilation failure
[ERROR] /Users/mdailey/maven_package_example/src/main/java/org/development/package/App.java:[1,22] <identifier> expected

Meu App.javaarquivo se parece com isso:

package org.development.package;

/**
 * Hello world!
 *
 */
public class App 
{
    public static void main( String[] args )
    {
        System.out.println( "Hello World!" );
    }
}

Não tenho muita experiência com Maven. O código que o Maven está gerando não está correto? Ou o Java que tenho instalado no meu computador, que é a versão 23.0.2, não é compatível com este projeto de início rápido do Maven? Tentei alterar o campo de nome no pom.xml removendo todos os sublinhados, mas ainda recebo o mesmo erro. Não consigo descobrir qual é o problema. Qualquer ajuda será bem-vinda.

java
  • 1 respostas
  • 43 Views
Prev
Próximo

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Reformatar números, inserindo separadores em posições fixas

    • 6 respostas
  • Marko Smith

    Por que os conceitos do C++20 causam erros de restrição cíclica, enquanto o SFINAE antigo não?

    • 2 respostas
  • Marko Smith

    Problema com extensão desinstalada automaticamente do VScode (tema Material)

    • 2 respostas
  • Marko Smith

    Vue 3: Erro na criação "Identificador esperado, mas encontrado 'import'" [duplicado]

    • 1 respostas
  • Marko Smith

    Qual é o propósito de `enum class` com um tipo subjacente especificado, mas sem enumeradores?

    • 1 respostas
  • Marko Smith

    Como faço para corrigir um erro MODULE_NOT_FOUND para um módulo que não importei manualmente?

    • 6 respostas
  • Marko Smith

    `(expression, lvalue) = rvalue` é uma atribuição válida em C ou C++? Por que alguns compiladores aceitam/rejeitam isso?

    • 3 respostas
  • Marko Smith

    Um programa vazio que não faz nada em C++ precisa de um heap de 204 KB, mas não em C

    • 1 respostas
  • Marko Smith

    PowerBI atualmente quebrado com BigQuery: problema de driver Simba com atualização do Windows

    • 2 respostas
  • Marko Smith

    AdMob: MobileAds.initialize() - "java.lang.Integer não pode ser convertido em java.lang.String" para alguns dispositivos

    • 1 respostas
  • Martin Hope
    Fantastic Mr Fox Somente o tipo copiável não é aceito na implementação std::vector do MSVC 2025-04-23 06:40:49 +0800 CST
  • Martin Hope
    Howard Hinnant Encontre o próximo dia da semana usando o cronógrafo 2025-04-21 08:30:25 +0800 CST
  • Martin Hope
    Fedor O inicializador de membro do construtor pode incluir a inicialização de outro membro? 2025-04-15 01:01:44 +0800 CST
  • Martin Hope
    Petr Filipský Por que os conceitos do C++20 causam erros de restrição cíclica, enquanto o SFINAE antigo não? 2025-03-23 21:39:40 +0800 CST
  • Martin Hope
    Catskul O C++20 mudou para permitir a conversão de `type(&)[N]` de matriz de limites conhecidos para `type(&)[]` de matriz de limites desconhecidos? 2025-03-04 06:57:53 +0800 CST
  • Martin Hope
    Stefan Pochmann Como/por que {2,3,10} e {x,3,10} com x=2 são ordenados de forma diferente? 2025-01-13 23:24:07 +0800 CST
  • Martin Hope
    Chad Feller O ponto e vírgula agora é opcional em condicionais bash com [[ .. ]] na versão 5.2? 2024-10-21 05:50:33 +0800 CST
  • Martin Hope
    Wrench Por que um traço duplo (--) faz com que esta cláusula MariaDB seja avaliada como verdadeira? 2024-05-05 13:37:20 +0800 CST
  • Martin Hope
    Waket Zheng Por que `dict(id=1, **{'id': 2})` às vezes gera `KeyError: 'id'` em vez de um TypeError? 2024-05-04 14:19:19 +0800 CST
  • Martin Hope
    user924 AdMob: MobileAds.initialize() - "java.lang.Integer não pode ser convertido em java.lang.String" para alguns dispositivos 2024-03-20 03:12:31 +0800 CST

Hot tag

python javascript c++ c# java typescript sql reactjs html

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve