对Scala for-loop理解的NumericRange Int大小限制背后的原因是什么?是否有可能(没有太多头痛)扩展"for/Seqs"NumericRange以使用Long(或任何大于Int.MaxValue的东西)?
scala>for (i: Long <- 0L to 10000000000) {}
Run Code Online (Sandbox Code Playgroud)java.lang.IllegalArgumentException: 0 to 10000000000L by 1: "seqs cannot contain more than Int.MaxValue elements." at scala.collection.immutable.NumericRange$.count(NumericRange.scala:227) at scala.collection.immutable.NumericRange.numRangeElements(NumericRange.scala:53) at scala.collection.immutable.NumericRange.length(NumericRange.scala:55) at scala.collection.immutable.NumericRange.foreach(NumericRange.scala:73) at .<init>(<console>:19) at .<clinit>(<console>) at .<init>(<console>:11) at .<clinit>(<console>) at $print(<console>) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at scala.tools.nsc.interpreter.IMain$ReadEvalPrint.call(IMain.scala:704) at scala.tools.nsc.interpreter.IMain$Request$$anonfun$14.apply(IMain.scala:920) at scala.tools.nsc.interpreter.Line$$anonfun$1.apply$mcV$sp(Line.scala:43) at scala.tools.nsc.io.package$$anon$2.run(package.scala:25) at java.lang.Thread.run(Thread.java:680)
-
提前谢谢!
我认为这将是Excel中一个易于使用的功能,但实现一个简单的过程来限制对较大工作簿中的特定工作表的访问是非常困难的.
有一些方法可以提示初始密码来打开同一工作簿的各种版本.但我想让所有用户都保持相同的工作簿,但限制访问某些工作表.当然有密码保护功能,要求用户输入密码才能查看表格.而不是基于不同的用户创建同一工作簿的多个版本.
我尝试了以下但它没有提示密码来访问工作表
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim MySheets As String, Response As String
Dim MySheet As Worksheet
MySheet = "COMMUNICATION"
If ActiveSheet.Name = MySheet Then
ActiveSheet.Visible = False
Response = InputBox("Enter password to view sheet")
If Response = "MyPass" Then
Sheets(MySheet).Visible = True
Application.EnableEvents = False
Sheets(MySheet).Select
Application.EnableEvents = True
End If
End If
Sheets(MySheet).Visible = True
End Sub
Run Code Online (Sandbox Code Playgroud)
我这样做了吗?
我真的想为用户提供一些脚本功能,同时不让它访问更强大的功能,比如改变DOM.也就是说,所有输入/输出都通过给定接口进行隧道传输.就像一种受限制的javacsript.
示例:如果checkanswer(func)
允许接口:
checkanswer( function (x,y)={
return x+y;
}
Run Code Online (Sandbox Code Playgroud)
但这些是不允许的:
alert(1)
document.write("hello world")
eval("alert()")
编辑:我想到的是一个使用javascript实现的简单语言,如http://stevehanov.ca/blog/index.php?id=92
我对CROSS APPLY参数化表值函数有问题.这是简化的伪代码示例:
SELECT *
FROM (
SELECT lor.*
FROM LOT_OF_ROWS_TABLE lor
WHERE ...
) AS lor
CROSS APPLY dbo.HeavyTableValuedFunction(lor.ID) AS htvf
INNER JOIN ANOTHER_TABLE AS at ON lor.ID = at.ID
WHERE ...
Run Code Online (Sandbox Code Playgroud)
LOT_OF_ROWS_TABLE返回许多行.LOT_OF_ROWS_TABLE并ANOTHER_TABLE只返回一行或几行.我的问题:
LOT_OF_ROWS_TABLE无论在加入时数据是否受限这一事实,都会为所有返回的行调用该函数ANOTHER_TABLE.
选择必须采用所示的格式 - 它是生成的,实际上它更加困难.
当我尝试重写它时,它可以非常快,但它不能像这样重写:
SELECT *
FROM (
SELECT lor.*
FROM LOT_OF_ROWS_TABLE lor
WHERE ...
) AS lor
INNER JOIN ANOTHER_TABLE AS at ON lor.ID = at.ID
CROSS APPLY dbo.HeavyTableValuedFunction(at.ID) AS htvf …Run Code Online (Sandbox Code Playgroud) 说我有面包店和成分库存:
enum Ingredient {
case flower = 1
case sugar = 2
case yeast = 3
case eggs = 4
case milk = 5
case almonds = 6
case chocolate = 7
case salt = 8
}
Run Code Online (Sandbox Code Playgroud)
案例rawValue代表库存编号.
然后我有两个食谱:
现在我定义一个函数
func bake(with ingredients: [Ingredient]) -> Cake
Run Code Online (Sandbox Code Playgroud)
当然,我相信我的员工,但我仍然想确保他们只使用正确的成分来烘焙蛋糕.
我可以通过定义两个单独的枚举来做到这一点:
enum ChocolateCakeIngredient {
case flower
case sugar
case eggs
case milk
case chocolate
}
enum AlmondCakeIngredient { …Run Code Online (Sandbox Code Playgroud) 如何验证具有属性的元素的文本长度.例如:
<sport code="FB">Football</sport>
Run Code Online (Sandbox Code Playgroud)
现在我需要限制代码属性的可能值(如"FB","BB","TT"),还需要限制文本的可能值和长度("Football","BasketBall"," TableTennis")以及这些文本的最大长度("Football","BasketBall","TableTennis")可以是20.
我试过了
<complexType name="sport">
<simpleContent>
<extension base="string">
<attribute name="code" type="code" />
</extension>
</simpleContent>
</complexType>
<simpleType name="code">
<restriction base="string">
<enumeration value="FB" />
<enumeration value="BB" />
<enumeration value="TT" />
</restriction>
</simpleType>
Run Code Online (Sandbox Code Playgroud)
但我无法验证文本"Foolball"的长度(也可能是值)你能否帮助解决如何验证代码和文本.谢谢
我想验证一个元素'Test'应该
我写的XSD看起来像这样:
<xsd:element name="Test" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType mixed="true">
<xsd:simpleContent>
<xsd:restriction>
<xsd:pattern value="xyz"/>
</xsd:restriction>
</xsd:simpleContent>
<xsd:attribute name="id" type="xsd:string"></xsd:attribute>
<xsd:attribute name="class" type="xsd:string"></xsd:attribute>
<xsd:attribute name="name" type="xsd:string"></xsd:attribute>
</xsd:complexType>
</xsd:element>
Run Code Online (Sandbox Code Playgroud)
但是,当我在Visual Studio中编写代码时,我在'xsd:attribute'元素上得到以下错误:
"属性"和内容模型是互斥的
有没有办法在同一元素上验证内容限制和属性?
我有2个域托管在同一个帐户,但我想限制第二个域不访问文件.
我有abc123.com和zyx987.com.
在我的PHP我做我需要的一切,我需要显示基于域的域名和模板,但我只想从abc123.com访问/下载文件.
下载文件夹包含以下文件:file1.pdf或file2.zip.
我尝试了'拒绝所有人',但这没有用,因为其他域也被阻止了.
还有另外一种方法吗?
我目前正在玩OWL,特别是有限制.我正在尝试创建执行以下操作的查询:
假设我有一个类'Cinema',它有一个属性'movies'(包含'Movie'类型的对象)."电影"类包含名为"genre"的属性.现在我想创建一个只有类型为'action'的电影的ActionCinemas类.
我真的不知道该怎么做.我正在考虑用交叉点或基数来做某事,但我不确定.
有人能帮我一把吗?
注意:这与我昨天在Stackoverflow上发布的另一个问题基本相同.但是,我认为我在那个问题中使用了一个不好的例子,这个例子并没有完全归结为我的想法.由于对原始帖子的所有回复都提到了第一个问题,我认为将新示例放在一个单独的问题中可能更好一点 - 没有重复的意图.
让我们定义一个简单游戏中使用的方向枚举:
enum Direction {
case up
case down
case left
case right
}
Run Code Online (Sandbox Code Playgroud)
现在在游戏中我需要两种角色:
HorizontalMover只能左右移动的A.VerticalMover只能上下移动.他们都可以移动所以他们都实现了
protocol Movable {
func move(direction: Direction)
}
Run Code Online (Sandbox Code Playgroud)
那么让我们定义两个结构:
struct HorizontalMover: Movable {
func move(direction: Direction)
let allowedDirections: [Direction] = [.left, .right]
}
struct VerticalMover: Movable {
func move(direction: Direction)
let allowedDirections: [Direction] = [.up, .down]
}
Run Code Online (Sandbox Code Playgroud)
...使用这种方法是我仍然可以将不允许的值传递给move()函数,例如以下调用将是有效的:
let horizontalMover = HorizontalMover()
horizontalMover.move(up) …Run Code Online (Sandbox Code Playgroud) restriction ×10
enums ×2
swift ×2
xsd ×2
.htaccess ×1
apache ×1
attributes ×1
cross-apply ×1
dom ×1
excel ×1
for-loop ×1
javascript ×1
mod-rewrite ×1
owl ×1
performance ×1
rdf ×1
restrictions ×1
scala ×1
scripting ×1
sql-server ×1
subset ×1
validation ×1
vba ×1
xml ×1